/* -------------------- Footer -------------------- */

#footer {
  background: var(--color-bg-dark);
  padding: 60px 20px 50px;
}

#footer .inside {
  max-width: 960px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

/* Logo */
#footer .content-text:nth-of-type(1) .rte p {
  color: var(--color-white);
  font-size: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  margin: 0;
}
#footer .content-text:nth-of-type(1) .rte p strong {
  font-weight: 800;
}

/* Adresse */
#footer .content-text:nth-of-type(2) .rte p {
  color: rgba(255, 255, 255, 0.75);
  font-size: 0.875rem;
  font-weight: 400;
  margin: 0;
}
#footer .content-text:nth-of-type(2) .rte p strong {
  font-weight: 500;
}

/* Nav: Impressum / Datenschutz */
#footer nav.mod_customnav.nav.block .level_1 {
  list-style: none;
  display: flex;
  margin: 0;
  padding: 0;
}

#footer nav.mod_customnav.nav.block .level_1 li a {
  color: var(--color-white);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  transition: opacity 0.2s ease;
}
#footer nav.mod_customnav.nav.block .level_1 li a:hover {
  opacity: 0.7;
}

#footer nav.mod_customnav.nav.block .level_1 li:not(:last-child)::after {
  content: "I";
  display: inline-block;
  color: var(--color-white);
  font-weight: 700;
  font-size: 0.8rem;
  margin: 0 12px;
}

/* Social Icons (Sprite) */
#footer .content-text:nth-of-type(3) .rte ul {
  list-style: none;
  display: flex;
  gap: 14px;
  margin: 0;
  padding: 0;
}

#footer .content-text:nth-of-type(3) .rte ul li a {
  display: block;
  width: 38px;
  height: 38px;
  overflow: hidden;
  text-indent: -9999px;
  background-image: url(/files/assets/sprite.png);
  background-repeat: no-repeat;
  background-size: 152px 38px; /* 4 x 38px nebeneinander */
  transition: opacity 0.2s ease;
}
.footer .content-text:nth-of-type(3) .rte ul li a:hover {
  opacity: 0.7;
}

#footer .content-text:nth-of-type(3) .rte ul li:nth-child(1) a { background-position: 0 0; }        /* LinkedIn */
#footer .content-text:nth-of-type(3) .rte ul li:nth-child(2) a { background-position: -38px 0; }    /* X */
#footer .content-text:nth-of-type(3) .rte ul li:nth-child(3) a { background-position: -76px 0; }    /* Xing */
#footer .content-text:nth-of-type(3) .rte ul li:nth-child(4) a { background-position: -114px 0; }   /* Instagram */
/* Small Desktop (desktop, 1024 and up) */
@media (min-width: 768px) {
  #footer .inside {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    grid-auto-flow: column;
    align-items: start;
    row-gap: 28px;
    column-gap: 40px;
  }
/* Small Desktop (desktop, 1024 and up) */
@media (min-width: 1024px) {

  #footer nav.mod_customnav.nav.block,
  #footer .content-text:nth-of-type(3) {
    justify-self: end;
  }

  #footer .content-text:nth-of-type(3) .rte ul {
    justify-content: flex-end;
  }
}

/* Desktop (desktop, 1280 and up) */
@media (min-width: 1280px) {
  #footer .inside {
    max-width: 1100px;
  }
}