.footer {
  padding: 24px 16px 32px;
  color: var(--oortu-text, #171E22);
  font-size: 0.875rem;
}

.footer-inner {
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  gap: 22px;
  border-top: 1px solid #E6EAF0;
  padding-top: 24px;
}

.footer-brand {
  display: grid;
  align-content: start;
  gap: 12px;
}

.footer-brand img {
  width: 93px;
  height: auto;
}

.footer p {
  color: var(--oortu-muted, #5A6577);
  line-height: 1.5;
}

.footer-title {
  color: var(--oortu-text, #171E22);
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 6px;
}

.footer-social {
  display: grid;
  align-content: start;
  gap: 12px;
}

.social-links {
  display: flex;
  gap: 12px;
}

.social-links a {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--oortu-panel, #fff);
  text-decoration: none;
  box-shadow: 0 1px 10px rgba(13, 27, 42, 0.05), 0 0 0 1px rgba(13, 27, 42, 0.04);
}

.social-links img {
  width: 24px;
  height: 24px;
  display: block;
}

.footer-links {
  display: grid;
  align-content: start;
  gap: 14px;
}

.footer a {
  color: var(--oortu-text, #171E22);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.footer a:hover {
  color: var(--oortu-blue, #1B3A5C);
}

@media (min-width: 641px) {
  .footer-inner {
    grid-template-columns: 1fr 1fr 1fr;
    align-items: start;
    column-gap: 42px;
  }

  .footer-social {
    max-width: 230px;
    justify-self: center;
  }

  .footer-links {
    justify-self: end;
    min-width: 190px;
  }
}
