/* One global footer, including the five signature pages. Own the shared visual tokens here. */
:root {
  --dc-shared-navy: #071925;
  --dc-shared-paper: #fffdf8;
  --dc-shared-gold: #d8aa68;
  --dc-shared-title-weight: 540;
  --dc-shared-control-radius: 8px;
  --dc-shared-measure: 1180px;
}
body .site-footer {
  background: var(--dc-shared-navy);
  color: var(--dc-shared-paper);
  font: 400 16px/1.6 Outfit, Arial, sans-serif;
  margin: 0; padding: 0; border: 0; border-radius: 0; box-shadow: none;
}
body .site-footer .site-footer__inner {
  width: min(var(--dc-shared-measure), calc(100% - 64px));
  max-width: var(--dc-shared-measure); margin-inline: auto;
  padding: 64px 0 32px;
}
body .site-footer .site-footer__cta { padding-bottom: 48px; gap: 32px 64px; }
body .site-footer .site-footer__cta h2 {
  font: var(--dc-shared-title-weight) clamp(36px,4.4vw,56px)/1.08 Fraunces, Georgia, serif;
  letter-spacing: -.025em; color: var(--dc-shared-paper); text-wrap: balance;
}
body .site-footer :is(.site-footer__eyebrow,.site-footer__license) {
  color: var(--dc-shared-gold); font: 650 12px/1.5 Outfit, Arial, sans-serif; letter-spacing: .1em;
}
body .site-footer .site-footer__cta-actions .dc-button {
  border-radius: var(--dc-shared-control-radius); min-height: 48px;
  font: 600 16px/1.35 Outfit, Arial, sans-serif;
  letter-spacing: normal; padding: .85rem 1.3rem; box-shadow: none;
}
body .site-footer .site-footer__cta-actions .dc-button:first-child:hover {
  background: var(--dc-color-action-strong); border-color: var(--dc-color-action-strong);
}
body .site-footer .site-footer__directory { padding-block: 48px; }
body .site-footer .site-footer__group summary {
  font: 600 16px/1.5 Outfit, Arial, sans-serif; min-height: 44px;
  display: flex; align-items: center; justify-content: space-between;
}
body .site-footer :is(.site-footer__list a,.site-footer__social a,.site-footer__legal-links a,.site-footer__contact-list a) {
  min-height: 44px; display: inline-flex; align-items: center;
}
body .site-footer :is(a,summary):focus-visible {
  outline: 3px solid var(--dc-shared-gold); outline-offset: 4px;
}
body .site-footer .site-footer__group summary::after {color:var(--dc-shared-gold)}
@media(max-width:780px) {
  body .site-footer .site-footer__inner {width:calc(100% - 40px);padding-top:40px}
  body .site-footer .site-footer__cta {padding-bottom:32px;gap:24px}
  body .site-footer .site-footer__cta h2 {font-size:clamp(34px,9.5vw,48px)}
  body .site-footer .site-footer__directory {padding-block:32px}
}
