/* Feedback is separate from the approved header and horizontal step styling. */
.contact-field { --feedback-rgb: 197 44 39; --feedback-border: #c52c27; --feedback-text: #a6221e; }
.contact-field[for="contact-name"] { --feedback-rgb: 24 62 216; --feedback-border: #3156e8; --feedback-text: #1437bb; }
.contact-field[for="contact-email"] { --feedback-rgb: 255 207 28; --feedback-border: #d9ad00; --feedback-text: #775d00; }
.contact-field.is-invalid {
  border-color: var(--feedback-border);
  background: linear-gradient(180deg, rgb(var(--feedback-rgb) / .10), #fff);
  box-shadow: inset 0 2px 4px rgb(var(--feedback-rgb) / .07), 0 0 0 2px rgb(var(--feedback-rgb) / .16);
}
.contact-field.is-invalid > span { color: var(--feedback-text); }
.contact-field.is-invalid input { padding-top: 10px; }
.contact-field.is-invalid > span {
  top: 1px;
  transform: none;
  font-size: 8px;
  line-height: 10px;
}
.contact-field.is-invalid > span small { font-size: inherit; }
.contact-field.is-invalid:focus-within {
  box-shadow: inset 0 2px 4px rgb(var(--feedback-rgb) / .07), 0 0 0 3px rgb(var(--feedback-rgb) / .20);
}
.contact-submit { --flight-color: var(--blue); }
.contact-email { --flight-color: #fedb1f; }
.contact-call { --flight-color: #d42922; }
.contact-flight-layer { position: fixed; inset: 0; z-index: 1000; pointer-events: none; overflow: hidden; }
.contact-flight { position: absolute; width: 40px; height: 40px; pointer-events: none; filter: drop-shadow(0 3px 4px #17223b30); will-change: transform, opacity; }
.contact-flight svg { display: block; width: 100%; height: 100%; overflow: visible; }
.footer-brand { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; }
.footer-brand .footer-copyright-symbol { font: 28px/1 Arial, sans-serif; color: #111; }
.footer-brand img { flex: 0 0 auto; }
.footer-brand img.footer-llc { width: auto; height: 35px; mix-blend-mode: normal; }
.footer-credit { flex: 0 0 auto; }
@media(max-width:600px) {
  .footer-content { display: flex; flex-wrap: wrap; gap: 12px 20px; }
  .footer-brand { gap: 6px; }
  .footer-brand > img { width: 116px; }
  .footer-brand img.footer-llc { height: 30px; width: auto; }
  .footer-brand .footer-copyright-symbol { font-size: 22px; }
}
