/*
 * Copyright (c) 2025 TechDivision GmbH
 * All rights reserved
 *
 * This product includes proprietary software developed at TechDivision GmbH, Germany
 * For more information see https://www.techdivision.com/
 *
 * To obtain a valid license for using this software please contact us at
 * license@techdivision.com
 */

footer {
  font-size: var(--body-font-size-s);
}

footer .block {
  margin-bottom: 0;
}

footer .section {
  padding: var(--spacing-simple);
}

footer .section > div {
  max-width: var(--page-width);
  margin: auto;
}

footer .footer h4 {
  margin-bottom: var(--spacing-simple);
}

footer .footer p {
  margin: 0;
}

footer .footer p a {
  display: inline-block;
  padding-right: 0;
  font-weight: var(--font-weight-regular);
  text-decoration: none;
}

footer .footer p a::after {
  content: none;
}

footer .footer p a:any-link {
  color: inherit;
}

footer .footer p a:hover {
  text-decoration: underline;
}

footer .section:nth-child(1) .columns > div {
  column-gap: var(--spacing-half);
}

footer .section:nth-child(1) .columns > div > div {
  padding-bottom: var(--spacing-half);
}

footer .section:nth-child(2) .columns > div > div {
  padding-bottom: var(--spacing-simple);
  font-size: var(--body-font-size-m);
  line-height: var(--body-line-height-m);
}

footer .section:nth-child(2) h4 {
  margin-bottom: 10px;
}

/* dark footer */
footer .section:nth-child(3) {
  padding-top: var(--spacing-half);
  padding-bottom: var(--spacing-half);
  font-size: var(--body-font-size-xs);
  color: var(--color-white);
  text-align: center;
}

footer .section:nth-child(3) p {
  margin-bottom: 20px;
}

footer .section:nth-child(3) p a {
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
}

footer .section:nth-child(3) img {
  max-width: 170px;
  height: auto;
}

/* social media */
footer .section:nth-child(2) {
  padding-top: var(--spacing-half);
  text-align: center;
}

footer .section:nth-child(2) > div p {
  display: inline-block;
  margin-right: var(--spacing-half);
}

footer .section:nth-child(2) > div p a::after {
  content: none;
}

footer .section:nth-child(2) > div p:last-child {
  margin-right: 0;
}

footer .section:nth-child(2) span.icon {
  box-sizing: border-box;
  width: 35px;
  height: 35px;
  margin-right: 0;
}

/* styling desktop */
@media (width >= 600px) {
  footer .section:nth-child(1) .columns > div > div {
    padding-bottom: 0;
  }
}

@media (width >= 900px) {
  footer .section {
    padding-top: var(--spacing-simple);
  }

  footer .section:nth-child(3) > div {
    display: grid;
    grid-template-columns: 2fr 8fr 2fr;
    align-items: center;
  }

  footer .section:nth-child(3) p {
    margin-bottom: 0;
  }

  footer .section:nth-child(3) > div p:first-of-type {
    grid-column: 1 / 2;
    grid-row: 1 / 3;
    align-self: center;
  }

  footer .section:nth-child(3) > div p:nth-child(2),
  footer .section:nth-child(3) > div p:nth-child(3) {
    padding: 0 var(--spacing-simple);
    align-self: end;
  }

  footer .section:nth-child(3) > div p:nth-child(3) {
    align-self: start;
  }

  footer .section:nth-child(3) > div p:last-of-type {
    grid-column: 3 / 4;
    grid-row: 1 / 3;
    align-self: center;
  }
}
