/*
 * Brand theme
 *
 * Shared brand tokens for the public website. Change only the --brand-*
 * tokens below when the primary brand colour needs to change.
 */
:root {
  --brand-primary: #064a9b;
  --brand-dark: #053b7c;
  --brand-light: #0b61b5;
  --brand-on: #ffffff;
  --brand-on-muted: rgba(255, 255, 255, 0.72);

  /* Compatibility aliases for the existing public templates. */
  --primary: var(--brand-primary);
  --primary-dark: var(--brand-dark);
  --primary-mid: var(--brand-light);
  --primary-light: var(--brand-light);
  --accent: var(--brand-light);
  --accent-dark: var(--brand-primary);
  --blue: var(--brand-primary);
  --blue-m: var(--brand-light);
  --accent-d: var(--brand-primary);
  --navy: var(--brand-dark);
}

/* Keep every public footer as one calm, continuous brand surface. */
.footer {
  background: var(--brand-primary) !important;
  color: var(--brand-on-muted);
}

.footer-bottom {
  background: transparent !important;
  margin: 32px 0 0 !important;
  padding: 18px 0 20px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.16) !important;
  color: var(--brand-on-muted) !important;
  line-height: 1.6;
}

.footer-bottom .footer-links {
  margin-bottom: 6px;
}

.footer-bottom .footer-links a {
  color: var(--brand-on-muted) !important;
}

.footer-bottom .footer-links a:hover,
.footer-bottom .footer-links a:focus-visible {
  color: var(--brand-on) !important;
}

@media (max-width: 640px) {
  .footer-bottom {
    margin-top: 24px !important;
    padding: 15px 0 17px !important;
  }

  .footer-bottom .footer-links a {
    display: inline-block;
    margin: 3px 7px !important;
  }
}
