.footer {
  background: var(--light);
  border-top: var(--spacer-1) solid var(--secondary);

  &__contacts {
    @media (min-width: 992px) {
      max-width: 250px;
    }
  }

  &__title {
    font-size: var(--font-size-lg);
    font-weight: var(--font-light);
    margin-bottom: var(--spacer-2);
    display: block;
    color: var(--dark);
    outline: none;

    &:hover {
      text-decoration: none;
    }

    &::after {
      display: inline;
      position: absolute;
      top: var(--spacer-2);
      right: var(--spacer-4);
      font-weight: 700;
      transition: opacity .2s;

      @media (min-width: 992px) {
        position: static;
        margin-left: var(--spacer-3);
        opacity: 0;
      }
    }

    &[aria-expanded] {
      border-style: solid;
      border-color: var(--border-color);
      border-bottom-width: var(--border-width);
      border-top-width: var(--border-width);
      border-left-width: 0;
      border-right-width: 0;
      padding-top: var(--spacer-2);
      padding-bottom: var(--spacer-2);

      @media (min-width: 992px) {
        padding-top: 0;
        padding-bottom: 0;
        border: none;

        &:hover {
          cursor: auto;
          color: var(--dark);
        }
      }
    }

    &[aria-expanded=false]::after {
      content: "+";
      opacity: 1;
    }

    &[aria-expanded=true]::after {
      content: "-";
    }
  }

  &__store {
    color: var(--secondary);
    font-weight: var(--font-headings);
  }

  &__links {
    padding-left: 0;
    list-style: none;

    i {
      color: var(--text-muted);
    }

    @media (min-width: 576px) {
      font-size: 94%;
    }
  }

  &__list-icon {
    width: 1.35rem;
    display: inline-block;
  }

  &__social {
    font-size: var(--font-size-lg);

    a {
      color: inherit;
      text-decoration: none;
      opacity: .7;
      margin-right: var(--spacer-2);

      &:last-child {
        margin-right: 0;
      }

      &:hover {
        opacity: 1;
      }
    }
  }

  &__credits {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: var(--spacer-3);
    margin-top: var(--spacer-3);
    border-top: var(--border-width) solid var(--border-color);
    font-size: var(--font-size-sm);
  }
}

.ecom-credits {
  padding: 1.5rem;
  background: #fff;
  text-align: center;
  font-size: .85rem;
  color: #37003c;

  a {
    color: inherit;
    text-decoration: none;
  }

  img {
    margin-left: .2rem;
    display: inline-block;
    max-width: 100px;
    height: auto;
  }
}
