/* Footer — Figma 2339:757 / 2349:1874 */
.footer {
  --footer-text: #a8c6c0;    /* muted mint-grey on --ink-deep (Figma) */
  background: var(--ink-deep);
  color: var(--footer-text);
  padding-block: 52px 30px;
}

.footer__grid {
  display: grid;
  grid-template-columns: 430px repeat(3, minmax(0, 1fr));
  gap: 32px;
  align-items: start;
}

/* Brand */
.footer__brand { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.footer__logo { gap: 11px; }
.footer__logo .logo__img { height: 50px; }
.footer__logo .logo__mark { width: 34px; height: 34px; border-radius: 10px; }
.footer__logo .logo__mark img { width: 18px; height: 18px; }
.footer__logo .logo__text { gap: 1px; }
.footer__logo .logo__word { font-size: 18.5px; color: #fff; }
.footer__logo .logo__sub { font-size: 9px; letter-spacing: .06em; color: var(--footer-text); }
.footer__about { font-size: 13.5px; line-height: 1.6; }

/* Link columns */
.footer__heading {
  margin-bottom: 24px;
  font-size: 11.5px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--accent);
}
.footer__links { display: flex; flex-direction: column; }
/* 10px Figma gap is folded into the link's padding so the whole pitch is clickable */
.footer__links a {
  display: inline-block;
  padding-block: 5px;
  font-size: 13.5px;
  line-height: 1.3;
  transition: color var(--t-hover) var(--ease);
}
.footer__links li:first-child a { padding-top: 0; }
.footer__links li:last-child a { padding-bottom: 0; }

/* Disclaimer + bottom bar */
.footer__legal {
  display: flex;
  flex-direction: column;
  gap: 13px;
  margin-top: 38px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, .14);
}
.footer__disc { font-size: 11.5px; line-height: 1.7; opacity: .72; }
.footer__disc strong { font-weight: 700; }
.footer__bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 24px;
  padding-top: 5px;
  font-size: 12px;
  line-height: 1.3;
}
.footer__policies { display: flex; flex-wrap: wrap; }
.footer__policies li + li::before { content: "\00a0·\00a0"; }
.footer__policies a { transition: color var(--t-hover) var(--ease); }

@media (hover: hover) {
  .footer__links a:hover,
  .footer__policies a:hover { color: #fff; }
}

@media (max-width: 1060px) {
  .footer__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .footer__brand { grid-column: 1 / -1; max-width: 430px; }
}

/* Mobile 390 frame — bottom padding clears the fixed 72px CTA bar */
@media (max-width: 720px) {
  .footer { padding-block: 44px 96px; }
  .footer__grid { grid-template-columns: minmax(0, 1fr); row-gap: 26px; }
  .footer__brand { gap: 12px; max-width: none; margin-bottom: 4px; }
  .footer__logo { gap: 10px; }
  .footer__logo .logo__img { height: 44px; }
  .footer__logo .logo__mark { width: 30px; height: 30px; border-radius: 9px; }
  .footer__logo .logo__mark img { width: 16px; height: 16px; }
  .footer__logo .logo__word { font-size: 16px; }

  .footer__heading { margin-bottom: 10px; line-height: 1.4; }
  .footer__links a { line-height: 1.4; }

  .footer__legal { gap: 12px; margin-top: 30px; padding-top: 20px; }
  .footer__bar { flex-direction: column; align-items: flex-start; gap: 8px; padding-top: 4px; line-height: 1.4; }
}
