/*
  Site footer (SITE-1448): marketing/templates/footer.html, on every marketing
  page and the Learning Center. Loaded in <head> from marketing/layout.php and
  the Learning Center layout, after tokens.css, so it also works on pages that
  don't load theme.css. Values come only from the --ti-* tokens.
  Selectors are one class deeper than the shared a / p rules in
  core/css/main.css and MainSite/css/styles.css, so no !important is needed.
*/

.site-footer {
  border-top: 1px solid var(--ti-border);
  background: var(--ti-bg-deep);
  color: var(--ti-muted);
  font-family: var(--ti-font);
  font-size: var(--ti-fs-sm);
  line-height: var(--ti-lh-snug);
}
.site-footer__in {
  max-width: var(--ti-max);
  margin: 0 auto;
  padding: 56px var(--ti-gutter) 28px;
}
.site-footer p { color: inherit; font-family: inherit; }
.site-footer ul { margin: 0; padding: 0; list-style: none; }
.site-footer a {
  color: var(--ti-text-subtle);
  font-family: inherit;
  text-decoration: none;
}
.site-footer a:hover,
.site-footer a:focus-visible {
  color: var(--ti-orange);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Link columns */
.site-footer__cols {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 28px 20px;
}
.site-footer p.site-footer__title {
  margin: 0 0 12px;
  color: var(--ti-orange);
  font-size: var(--ti-fs-xs);
  font-weight: var(--ti-fw-black);
  letter-spacing: var(--ti-track-caps);
  line-height: var(--ti-lh-snug);
  text-transform: uppercase;
}
.site-footer__cols li { margin: 0 0 9px; }

/* Awards, Made in the USA, social links */
.site-footer__awards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 16px 28px;
  margin: 48px 0 20px;
}
.site-footer__awards img { display: block; width: auto; height: 88px; }
.site-footer p.site-footer__usa {
  margin: 0 0 14px;
  color: var(--ti-text-soft);
  font-size: var(--ti-fs-md);
  font-weight: var(--ti-fw-semibold);
  text-align: center;
}
.site-footer ul.site-footer__social {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 20px;
  margin-bottom: 22px;
}
.site-footer__social a { color: var(--ti-text-soft); font-weight: var(--ti-fw-semibold); }

/* Legal text, copyright and Disclosure */
.site-footer__legal {
  max-width: 920px;
  margin: 0 auto;
  color: var(--ti-muted-mid);
  font-size: var(--ti-fs-xs);
  line-height: var(--ti-lh-body);
  text-align: center;
}
.site-footer__legal p { margin: 0 0 10px; }
.site-footer__legal a { color: var(--ti-muted); text-decoration: underline; }
.site-footer p.site-footer__copy {
  margin: 18px 0 0;
  padding-top: 18px;
  border-top: 1px solid var(--ti-border);
  color: var(--ti-muted-mid);
  font-size: var(--ti-fs-xs);
  text-align: center;
}
.site-footer__copy a { color: var(--ti-muted); }

@media (max-width: 1199px) {
  .site-footer__cols { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 768px) {
  .site-footer__in { padding-top: 40px; }
  .site-footer__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; }
  .site-footer__awards { margin-top: 36px; }
  .site-footer__awards img { height: 64px; }
}
