.footer-main {
  --bg-color: #2d2a26;
  --text-color: #ede5da;
  background-color: var(--bg-color);
  color: var(--text-color);
  padding: 20px 0;

  @media screen and (min-width: 990px) {
    padding: 48px 0;
  }

  .footer-wrapper {
    display: flex;
    flex-flow: column;
    gap: 20px;
    @media screen and (min-width: 750px) {
      flex-flow: wrap;
      padding: 0 20px;
    }
    @media screen and (min-width: 990px) {
      padding: 0 50px;
    }

    .footer__item {
      flex: 1 0 100%;
      @media screen and (min-width: 750px) {
        flex: 0 0 calc(50% - 10px);
      }
      @media screen and (min-width: 990px) {
        flex: 0 0 calc(25% - 20px);
      }
    }

    .footer-logo {
      display: block;
      margin: 0 0 20px;
    }

    .footer-copyright {
      font-size: 2rem;
      line-height: 2.8rem;
      color: var(--text-color);
      a {
        color: var(--text-color);
        text-decoration: none;
        &:hover {
          color: rgba(var(--color-background));
        }
      }
      p {
        margin: 0;
        font-weight: 400;
      }
    }

    .footer__item-menu {
      display: flex;
      flex-flow: column;
      list-style: none;
      padding: 0;
      a {
        font-size: 2rem;
        font-weight: 900;
        line-height: 3rem;
        color: var(--text-color);
        text-decoration: none;
        text-transform: uppercase;
        transition: all 0.3s ease-in-out;
        @media screen and (min-width: 990px) {
          font-size: 2.5rem;
          line-height: 4.3rem;
        }
        &:hover {
          color: rgba(var(--color-background));
        }
      }
    }

    .footer__item-title {
      font-size: 2.5rem;
      text-transform: uppercase;
      font-weight: 900;
      line-height: 4.3rem;
      margin: 16px 0 20px;
    }

    address {
      font-size: 2rem;
      line-height: 2.2rem;
      font-style: normal;
      margin: 0;
      font-weight: 400;
    }

    .newsletter-form__field-wrapper {
      max-width: 260px;
    }

    .footer__list-social {
      display: flex;
      margin: 60px 0 0;
      gap: 16px;
    }
  }
}
