/* Keep footer controls independent of legacy page image/section rules. */
html body footer#site-footer.cc-footer .cc-footer-grid {
  align-items:start!important;
}
html body footer#site-footer.cc-footer .cc-footer-grid > * {
  min-width:0!important;min-height:0!important;height:auto!important;
  align-self:start!important;text-align:left!important;
}
html body footer#site-footer.cc-footer .cc-footer-contact {
  padding-top:0!important;padding-bottom:0!important;margin-block:0!important;
}
html body footer#site-footer.cc-footer .cc-footer-brand :is(.cc-footer-tagline,.cc-footer-description) {
  text-align:left!important;
}
html body footer#site-footer.cc-footer .cc-footer-brand :is(.co-logo,.ks-social) {
  margin-left:0!important;justify-content:flex-start!important;
}
html body footer#site-footer.cc-footer :is(.cc-footer-nav,.cc-footer-contact) > h2 {
  margin:0 0 20px!important;padding:0!important;text-align:left!important;
}
html body footer#site-footer.cc-footer .cc-footer-nav > a {
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:12px!important;min-height:44px!important;padding:8px 0!important;
  box-sizing:border-box!important;line-height:22px!important;
}
html body footer#site-footer.cc-footer .cc-footer-quote {
  box-sizing:border-box!important;display:flex!important;align-items:center!important;
  justify-content:space-between!important;gap:16px!important;
  width:100%!important;max-width:none!important;height:auto!important;min-height:52px!important;
  padding:14px 18px!important;margin:24px 0 0!important;
  line-height:24px!important;aspect-ratio:auto!important;text-align:left!important;
}
html body footer#site-footer.cc-footer .cc-footer-quote > span {
  min-width:0!important;flex:1 1 auto!important;white-space:normal!important;
}
html body footer#site-footer.cc-footer .cc-footer-quote > img {
  display:block!important;width:18px!important;height:18px!important;
  min-width:18px!important;max-width:18px!important;min-height:18px!important;max-height:18px!important;
  flex:0 0 18px!important;object-fit:contain!important;aspect-ratio:1!important;
  margin:0!important;padding:0!important;
}
html body footer#site-footer.cc-footer .cc-footer-nav > a > img {
  width:14px!important;height:14px!important;min-width:14px!important;max-width:14px!important;
  flex:0 0 14px!important;object-fit:contain!important;
}
html body footer#site-footer.cc-footer .cc-contact-link {
  min-height:44px!important;align-items:center!important;
}
html body footer#site-footer.cc-footer .cc-contact-link > span:last-child {
  min-width:0;overflow-wrap:anywhere;
}
html body footer#site-footer.cc-footer :is(.cc-footer-nav a,.cc-contact-link,.cc-footer-quote) {
  touch-action:manipulation;
}
html body footer#site-footer.cc-footer a:focus-visible {
  outline:2px solid #e986c5!important;outline-offset:3px!important;
}
@media(max-width:1000px) {
  html body footer#site-footer.cc-footer .cc-footer-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:32px!important;
  }
  html body footer#site-footer.cc-footer .cc-footer-grid > * {
    grid-column:auto!important;grid-row:auto!important;border-inline:0!important;padding-inline:0!important;
  }
}
@media(max-width:600px) {
  html body footer#site-footer.cc-footer .cc-footer-grid {
    grid-template-columns:minmax(0,1fr)!important;gap:28px!important;
  }
  html body footer#site-footer.cc-footer .cc-footer-contact {
    border-top:1px solid #ffffff24!important;padding-top:28px!important;
  }
  html body footer#site-footer.cc-footer .cc-footer-brand {padding-bottom:0!important;border-bottom:0!important}
}
