/* Site footer for every page (template-parts/footer.php), matching the Homepage 2026 footer.
   Selectors are prefixed footer26 and reset the old theme's footer rules in css/main.css. */
@font-face {
  font-family: "Vista Light";
  src: url("../fonts/vista-light.woff") format("woff");
  font-display: swap;
}

footer.footer26 {
  display: block; position: relative; clear: both; overflow: visible;
  width: auto; margin: 0; padding: 64px 0 40px;
  background: #222d38; color: rgba(255, 255, 255, .75);
  font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: 300; font-size: 16px; line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
footer.footer26 *, footer.footer26 *::before, footer.footer26 *::after { box-sizing: border-box; }
footer.footer26 > div { width: auto; padding: 0; }
footer.footer26 a { color: inherit; text-decoration: none; opacity: 1; }
footer.footer26 img { display: block; max-width: 100%; overflow: visible; }

footer.footer26 .footer26-wrap { width: min(1200px, 100% - 48px); margin-inline: auto; }
footer.footer26 .footer26-top {
  display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap;
  padding-bottom: 40px; border-bottom: 1px solid rgba(255, 255, 255, .12);
}
footer.footer26 .footer26-logo img { height: 48px; width: auto; filter: brightness(0) invert(1); }
footer.footer26 .footer26-cta {
  font-family: "Vista Light", "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: normal;
  font-size: clamp(22px, 2.6vw, 30px); line-height: 1.3; color: #fff;
}
footer.footer26 .footer26-cta a { color: #f36c33; border-bottom: 1px solid transparent; transition: border-color .3s; }
footer.footer26 .footer26-cta a:hover { border-color: #f36c33; }
footer.footer26 .footer26-bottom {
  display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap;
  padding-top: 28px; font-size: 14px;
}
footer.footer26 .footer26-legal { display: flex; flex-direction: column; gap: 4px; }
footer.footer26 .footer26-legal a {
  align-self: flex-start; font-size: 12px; color: #C8CBCD;
  border-bottom: 1px solid transparent; transition: color .3s, border-color .3s;
}
footer.footer26 .footer26-legal a:hover { color: #f36c33; border-color: #f36c33; }

footer.footer26 .footer26-social { display: flex; gap: 12px; }
footer.footer26 .footer26-social a {
  width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center;
  border: 1px solid rgba(255, 255, 255, .25);
  transition: background-color .3s, border-color .3s, transform .35s cubic-bezier(.22, .8, .24, 1);
}
footer.footer26 .footer26-social a:hover { background: #f36c33; border-color: #f36c33; transform: translateY(-4px); }
footer.footer26 .footer26-social img { width: 18px; height: 18px; filter: brightness(0) invert(1); }

@media (prefers-reduced-motion: reduce) {
  footer.footer26 .footer26-social a { transition: none; }
  footer.footer26 .footer26-social a:hover { transform: none; }
}
