/* Footer Styles with CSS Nesting */

.footer {
  width: 100%;
  background: var(--color-secondary);
}

.footer__container {
  display: flex;
  width: 100%;
  max-width: 1360px;
  flex-direction: column;
  align-items: center;
  padding: var(--spacing-10);
  padding-bottom: var(--spacing-4);
  margin: 0 auto;
  gap: var(--spacing-2);
}

.footer__icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-2);
  width: 100%;
}

@media (max-width: 960px) {
  .footer__container {
    padding-right: var(--spacing-4);
    padding-left: var(--spacing-4);
  }
}

/* Frame */
.footer__frame {
  display: flex;
  width: 100%;
  box-sizing: border-box;
  flex: none;
  flex-grow: 0;
  align-items: center;
  align-self: stretch;
  justify-content: space-between;
  order: 0;
  padding: var(--spacing-6) var(--spacing-10);
  border-radius: var(--radius-md);
  background: var(--color-white);
  box-shadow: var(--shadow-sm);
  gap: var(--spacing-10);
}
@media (max-width: 960px) {
  .footer__frame {
    padding: var(--spacing-5) var(--spacing-8);
    gap: var(--spacing-10);
  }
}
@media (max-width: 767px) {
  .footer__frame {
    flex-direction: column;
    padding: var(--spacing-6);
    gap: var(--spacing-6);
  }
}
@media (max-width: 767px) {
  .footer__frame nav {
    display: flex;
    width: 100%;
    justify-content: center;
  }

  .footer__frame nav .btn {
    width: 100%;
    max-width: 280px;
  }
}
.footer__frame .footer__actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  gap: var(--spacing-2);
}
@media (max-width: 767px) {
  .footer__frame .footer__actions {
    width: 100%;
    flex-direction: column;
    justify-content: center;
  }

  .footer__frame .footer__actions .btn {
    width: 100%;
    max-width: 280px;
  }
}

/* Logos */
.footer__logos {
  display: flex;
  height: var(--size-60);
  align-items: center;
  gap: var(--spacing-8);
}
@media (max-width: 960px) {
  .footer__logos {
    gap: var(--spacing-6);
  }
  .footer__logos img:first-child {
    width: 150px;
  }

  .footer__logos img:last-child {
    width: 90px;
  }
}
@media (max-width: 767px) {
  .footer__logos {
    height: auto;
    flex-direction: column;
    gap: var(--spacing-4);
  }
}
.footer__logos img {
  height: var(--size-60);
  object-fit: contain;
}
@media (max-width: 767px) {
  .footer__logos img {
    height: 50px;
  }

  .footer__logos img:first-child {
    width: 140px;
  }

  .footer__logos img:last-child {
    width: 80px;
  }
}
.footer__logos img:first-child {
  width: 179px;
}
.footer__logos img:last-child {
  width: 109px;
}

/* Copyright */
.footer__copyright {
  width: 100%;
  padding: 0;
  margin: 0;
  color: var(--color-white);
  font-family: var(--font-family-ja);
  font-size: 12px;
  font-weight: 500;
  line-height: 140%;
  text-align: center;
}
@media (max-width: 767px) {
  .footer__copyright {
    font-size: 11px;
  }
}
