.footer { border-top: 1px solid rgba(214, 181, 109, 0.28); background: #051219; }
.footer__inner {
  width: min(100% - 40px, var(--content));
  display: grid;
  grid-template-columns: 1.15fr 0.85fr 0.85fr;
  gap: clamp(32px, 6vw, 90px);
  margin: 0 auto;
  padding: 72px 0 52px;
}
.footer__brand img { width: 240px; height: auto; }
.footer__brand p { max-width: 330px; margin: 24px 0 0; color: var(--muted); font-size: 0.9rem; }
.footer__title { margin: 0 0 20px; color: var(--gold); font-size: 0.72rem; font-weight: 900; letter-spacing: 0.16em; text-transform: uppercase; }
.footer__links, .footer__contact { display: grid; gap: 10px; }
.footer__links a, .footer__contact a { width: fit-content; color: var(--ivory-soft); font-size: 0.93rem; transition: color 160ms ease; }
.footer__links a:hover, .footer__contact a:hover { color: var(--gold); }
.footer__contact strong { display: block; color: var(--white); font-family: "Alice", serif; font-size: 1.15rem; font-weight: 400; }
.footer__socials { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.footer__socials a { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid rgba(214, 181, 109, 0.35); border-radius: 50%; }
.footer__socials img { width: 18px; height: 18px; object-fit: contain; }
.footer__bottom {
  width: min(100% - 40px, var(--content));
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin: 0 auto;
  padding: 22px 0 28px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  color: #78909a;
  font-size: 0.78rem;
}
.footer__legal { display: flex; flex-wrap: wrap; gap: 18px; }
.footer__legal a:hover { color: var(--ivory); }

@media (max-width: 820px) {
  .footer__inner { grid-template-columns: 1fr 1fr; }
  .footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
  .footer__inner { grid-template-columns: 1fr; padding-top: 52px; }
  .footer__brand { grid-column: auto; }
  .footer__bottom { flex-direction: column; }
}
