.footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.footer--home {
  padding: var(--spacing-2xl);
  background-color: var(--color-bg);
}

.footer--legal {
  padding: var(--spacing-2xl) var(--spacing-lg) var(--spacing-2xl) var(--spacing-2xl);
}

.footer--privacy {
  padding: var(--spacing-2xl) var(--spacing-lg) var(--spacing-2xl) var(--spacing-2xl);
}

.footer__brand {
  display: flex;
  flex-direction: column;
}

.footer__brand > img {
  margin: var(--spacing-xs) 0 var(--spacing-lg) 0;
  max-height: 50px;
}

.footer__brand > h2 {
  margin-bottom: var(--spacing-xxs);
}

.footer__copyright {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer__copyright > h2::before {
  display: inline-block;
  content: "©";
  transform: translate(-5px, -2px);
  font-size: var(--fs-md);
  color: var(--color-primary);
}

.footer__navigation {
  display: flex;
  flex-direction: column;
}

.footer__navigation > a {
  margin-bottom: var(--spacing-xxs);
  cursor: pointer;
}

.footer__brand > h2,
.footer__brand > h3,
.footer__navigation > a {
  font-size: clamp(var(--fs-xxs), 2.5vw, var(--fs-sm));
  font-family: var(--karla);
  font-weight: 300;
}

.footer__copyright > h2 {
  font-size: clamp(var(--fs-xxs), 2.5vw, var(--fs-sm));
  font-family: var(--karla);
  color: var(--color-primary);
}

.footer__navigation > a::before {
  content: "•";
  color: var(--color-primary);
  display: inline-block;
  transform: translate(-5px, 2px);
  opacity: 0;
  font-size: var(--fs-lg);
}

.footer__navigation > a:hover {
  color: var(--color-primary);
}

.footer__navigation > a:hover::before {
  opacity: 1;
}

@media (max-width: 1002px) {
  .footer {
    padding: var(--spacing-2xl) var(--spacing-sm);
  }
}

@media (max-width: 768px) {
  .footer {
    flex-wrap: wrap;
    /* padding: var(--spacing-2xl) 0 var(--spacing-2xl) var(--spacing-sm); */
  }

  .footer__brand {
    order: 1;
    flex: 0 0 80%;
    height: 150px;
  }

  .footer__navigation {
    order: 2;
    flex: 0 0 20%;
    text-align: left;
    height: 150px;
  }

  .footer__copyright {
    order: 3;
    flex: 0 0 100%;
    text-align: center;
    margin-top: var(--spacing-lg);
  }

  .footer__brand > img {
    max-width: clamp(100px, 80%, 160px);
  }
}

@media (max-width: 480px) {
  .footer__brand {
    flex: 0 0 50%;
  }

  .footer__navigation {
    flex: 0 0 30%;
  }
}
