/**
 * Site footer: the 2016 site's two-tone slate, restored.
 *
 * #47657D for the body and #698DA9 for the copyright strip beneath it — the
 * same two values as the masthead and the original footer. The previous build
 * used a much darker navy, which broke the symmetry with the header.
 */

.site-footer { background: var(--chrome-footer); color: var(--c-slate-100); }

.site-footer__top {
  display: grid;
  gap: var(--s-8);
  padding-block: var(--section-y-tight);
}
@media (min-width: 56em) {
  .site-footer__top { grid-template-columns: 1.2fr 1.4fr 1fr; gap: var(--s-9); }
}

.site-footer__brand-link {
  display: inline-flex; align-items: center; gap: var(--s-3);
  color: var(--c-white); text-decoration: none;
}
.site-footer__name {
  display: block;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-md);
  line-height: 1.15;
}
.site-footer__slogan {
  display: block;
  margin-top: 0.2rem;
  font-size: var(--fs-3xs);
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--c-gold);
}

.site-footer h2, .site-footer .site-footer__heading {
  font-family: var(--font-body);
  font-size: var(--fs-3xs);
  font-weight: 700;
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--c-slate-100);
  margin: 0 0 var(--s-4);
}

.site-footer ul { list-style: none; margin: 0; padding: 0; }
.site-footer__nav { display: grid; gap: var(--s-6); grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); }
.site-footer a {
  color: var(--c-white);
  text-decoration: none;
  font-size: var(--fs-sm);
  transition: color var(--dur-fast) var(--ease);
}
.site-footer li + li { margin-top: var(--s-2); }
.site-footer a:hover { color: var(--c-gold); }

.site-footer__contact { font-size: var(--fs-sm); font-style: normal; }
.site-footer__contact address { font-style: normal; display: grid; gap: var(--s-2); }

.site-footer__social { display: flex; gap: var(--s-2); margin-top: var(--s-5); }
.site-footer__social a {
  display: grid; place-items: center;
  width: 2.1rem; height: 2.1rem;
  border: 1px solid rgb(255 255 255 / 0.28);
  border-radius: var(--radius-pill);
  color: var(--c-white);
  transition: border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease),
              background var(--dur-fast) var(--ease);
}
.site-footer__social a:hover {
  color: var(--c-slate-900);
  background: var(--c-gold);
  border-color: var(--c-gold);
}

/* The copyright strip. The original set white text on this ground, which comes
   to 3.5:1 — below AA for text this size. The ground is kept exactly and the
   ink is darkened instead: #16202B on #698DA9 is 4.69:1. */
.site-footer__bottom {
  background: var(--chrome-footer-base);
  --footer-base-ink: #16202B;
  color: var(--footer-base-ink);
}
.site-footer__bottom a,
.site-footer__bottom .site-footer__copyright,
.site-footer__bottom .site-footer__consent { color: var(--footer-base-ink); }
.site-footer__bottom a:hover,
.site-footer__bottom .site-footer__consent:hover { color: var(--c-slate-900); text-decoration: underline; }
.site-footer__bottom-inner {
  display: flex; flex-wrap: wrap;
  align-items: center; justify-content: space-between;
  gap: var(--s-3) var(--s-5);
  padding-block: var(--s-4);
}
.site-footer__copyright { margin: 0; font-size: var(--fs-2xs); }
.site-footer__bottom-inner ul { display: flex; flex-wrap: wrap; gap: var(--s-4); }
.site-footer__bottom-inner li + li { margin-top: 0; }
.site-footer__bottom-inner a { font-size: var(--fs-2xs); }

/* Legal row: policy links plus the consent manager trigger. */
.site-footer__legal {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--s-4);
}
.site-footer__consent {
  font-size: var(--fs-2xs);
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 0.22em;
}
