.footer {
  border-top: 1px solid #F6F6F6;
  margin-top: 50px;
}

.footer-top {
  padding: 40px 0;
  font-size: var(--font-size-small);

  .container {
    display: flex;
    gap: var(--gutter-x);
    flex-direction: column; 
    text-align: center;
    justify-content: center;

    @media (min-width: 992px) {
      flex-direction: row;
      text-align: unset;
      justify-content: unset;
    }
  }

}

.footer-top-brand, .footer-top-contact, .footer-top-opening-hours, .footer-top-socials {
  flex: 1 1 25%;
}

.footer-top-brand {
  font-size: 32px;

  a {
    text-decoration: none;
  }
}

.footer-top-title {
  font-size: var(--font-size-medium);
  margin-bottom: 15px;
}

.footer-top-contact-link {
  text-decoration: none;
  display: flex;
  gap: 5px;
  align-items: center;
  justify-content: center;
  margin-bottom: 5px;

  &:hover, &:focus {
    color: var(--color-primary);

    .footer-top-contact-link-icon {
      background-color: var(--color-primary);
    }

    svg {
      path {
        fill: var(--color-tertiary);
      }
    }
  }

  @media (min-width: 992px) {
    justify-content: unset;
  }
}

.footer-top-contact-link-icon {
  width: 25px;
  height: 25px;
  border-radius: 25px;
  background-color: var(--color-tertiary);
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer-top-socials-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.footer-top-socials-list-item {
  a {
    display: flex;
    gap: 5px;
    align-items: center;
    justify-content: center;
    text-decoration: none;

    &:hover, &:focus {
      color: var(--color-primary);

      .footer-top-socials-list-item-icon {
        background-color: var(--color-primary);
      }

      svg {
        path {
          fill: var(--color-tertiary);
        }
      }
    }

    @media (min-width: 992px) {
      justify-content: unset;
    }
  }
}

.footer-top-socials-list-item-icon {
  width: 40px;
  height: 40px;
  border-radius: 40px;
  background-color: var(--color-tertiary);
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer-bottom {
  background-color: var(--color-tertiary);
  font-size: var(--font-size-tiny);
  padding: 30px 0;

  .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 50px;

    @media (min-width: 992px) {
      flex-direction: row;
      justify-content: space-between;
    }
  }
}

.footer-bottom-links {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 50px;

  a {
    text-decoration: none;

    &:hover, &:focus {
      color: var(--color-primary);
    }
  }

  @media (min-width: 992px) {
    flex-direction: row;
    justify-content: center;
    justify-content: flex-start;
  }
}

.footer-bottom-logos {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 50px;
}

.footer-bottom-logo {
  font-weight: var(--font-weight-bold);
  font-size: 20px;
  text-transform: uppercase;
}
