.footer {
  position: relative;
  padding: clamp(3rem, 2rem + 4vw, 6rem) 0 clamp(2rem, 1rem + 2vw, 3rem);
  background:
    radial-gradient(80% 60% at 50% 0%, oklch(20% 0.04 270), transparent 70%),
    var(--color-bg);
}

.footer__inner {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr auto;
  gap: 2rem;
  align-items: start;
  position: relative;
  z-index: 2;
}

.footer__brand {
  display: flex;
  align-items: baseline;
  font-family: var(--font-display);
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.footer__address {
  color: var(--color-muted);
  font-style: normal;
  font-size: var(--text-sm);
  line-height: 1.7;
}

.footer__address a:hover { color: var(--color-accent); }

.footer__map {
  display: inline-block;
}

.footer__more,
.footer__socials {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  font-size: var(--text-sm);
}

.footer__bruut {
  justify-self: end;
  display: block;
  width: clamp(9rem, 6rem + 8vw, 13rem);
  filter: drop-shadow(0 10px 20px oklch(0% 0 0 / 0.45));
  transition: transform var(--duration-base) var(--ease-out);
}

.footer__bruut img {
  display: block;
  width: 100%;
  height: auto;
}

.footer__bruut:hover {
  transform: rotate(-1.5deg) scale(1.03);
}

.footer__copy {
  grid-column: 1 / -1;
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--color-line);
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 1.5rem;
  justify-content: space-between;
  font-size: var(--text-xs);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-muted);
}

@media (max-width: 720px) {
  .footer {
    padding-bottom: calc(clamp(2rem, 1rem + 2vw, 3rem) + 4.5rem + env(safe-area-inset-bottom));
  }

  .footer__inner {
    grid-template-columns: 1fr auto;
    gap: 1.75rem 1.5rem;
  }

  .footer__brand { align-self: center; }

  .footer__bruut {
    grid-column: 2;
    grid-row: 1;
    width: 8.5rem;
  }

  .footer__address { grid-column: 1 / -1; }
  .footer__more    { grid-column: 1; }
  .footer__socials { grid-column: 2; }
}
