
.footer { background: var(--surface-inverse); color: var(--text-on-inverse); padding: 64px 0 28px; font-family: var(--font-body); }
.footer .logo-neg { --logo-ink: #FFFFFF; --logo-star: #FCA92C; --logo-sub: #CBD5E1; }
.footer-shell { max-width: var(--container); margin: 0 auto; padding: 0 var(--gutter); }
.footer-top { display: grid; grid-template-columns: minmax(220px, 1fr) 3fr; gap: 48px 64px; }
.footer-brand svg { display: block; width: 160px; height: 48px; }
.footer-claim { margin: 18px 0 20px; max-width: 280px; font-size: 15px; line-height: 1.55; color: var(--text-on-inverse-muted); }
.footer-cta {
  display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 10px 18px;
  border-radius: var(--radius-md, 10px); background: var(--accent); color: var(--text-on-brand);
  font-size: 15px; font-weight: 700; text-decoration: none;
  transition: background var(--dur-fast) var(--ease-out);
}
.footer-cta:hover { background: var(--accent-hover); }
.footer-cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 32px 24px; }
.footer-col h2 {
  margin: 0 0 16px; font-family: var(--font-display); font-size: 13px; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase; color: var(--accent-light);
}
.footer-col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.footer-col a { overflow-wrap: anywhere; color: var(--text-on-inverse); text-decoration: none; font-size: 15px; transition: color var(--dur-fast) var(--ease-out); }
.footer-col a:hover { color: var(--accent-light); }
.footer-bottom {
  border-top: 1px solid rgba(255,255,255,.12); margin-top: 56px; padding-top: 24px;
  display: flex; justify-content: space-between; gap: 8px 24px; flex-wrap: wrap;
  font-size: 13px; color: var(--text-on-inverse-muted);
}
.footer :focus-visible { outline: none; box-shadow: var(--focus-ring); border-radius: var(--radius-xs); }
@media (max-width: 860px) { .footer-top { grid-template-columns: 1fr; } }
@media (max-width: 480px) {
  .footer { padding-top: 48px; }
  .footer-cols { grid-template-columns: 1fr 1fr; }
}
