/* Contact page measurements from the desktop and phone Wix captures. */
main[data-page="contact"] .hero-page h1 { transform: translateY(-11px); }
.contact-band { padding: 136px 24px; background: #f5f5f5; }
.contact-layout { display: grid; grid-template-columns: 350px 516px; gap: 49px; max-width: 915px; margin: 0 auto; transform: translateX(21px); }
.contact-info h2 { margin-bottom: 20px; }
.contact-group + .contact-group { margin-top: 20px; }
.contact-links { display: flex; flex-direction: column; gap: 18px; margin-top: 16px; }
.contact-links a { display: flex; align-items: center; gap: 10px; width: fit-content; line-height: 22.4px; }
.contact-links .icon { width: 20px; height: 20px; opacity: .8; }
.contact-form-wrap { min-width: 0; }
.contact-band .fp-form { background: #f3f3f3; }
.contact-band .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.contact-band .field input, .contact-band .field textarea { display: block; font-size: 16px; line-height: 24px; padding: 8px 12px; border: 1px solid rgba(0, 0, 0, .6); border-radius: 10px; background: #f5f5f5; }
.contact-band .field input { height: 42px; }
.contact-band .field input::placeholder, .contact-band .field textarea::placeholder { color: #333; opacity: 1; }
.contact-band .field textarea { height: 92px; min-height: 92px; resize: none; }
.contact-stakeholders { margin: 0; padding: 0; min-width: 0; border: 0; }
.contact-stakeholders legend { padding: 0; margin-bottom: 8px; font-size: 14px; line-height: 20px; }
.contact-stakeholders legend span { margin-left: 3px; }
.contact-band .checks { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 15px; }
.contact-band .checks label { align-items: center; gap: 12px; line-height: 24px; }
.contact-band input[type="checkbox"] { appearance: none; width: 16px; height: 16px; flex: none; margin: 0; border: 1px solid rgba(0, 0, 0, .6); border-radius: 0; background: transparent; cursor: pointer; }
.contact-band input[type="checkbox"]:checked { background: #000; border-color: #000; box-shadow: inset 0 0 0 3px #f5f5f5; }
.contact-band input:focus-visible, .contact-band textarea:focus-visible { outline: 2px solid #000; outline-offset: 3px; }
.contact-opt-in { display: flex; align-items: center; gap: 12px; padding: 8px 12px; font-size: 16px; line-height: 24px; }
.contact-band .btn { width: calc((100% - 24px) / 2); margin-top: 24px; }
.contact-band .btn:hover, .contact-band .btn:focus-visible { background: #000; color: #fff; border-color: #000; }
.contact-band .form-status:empty { display: none; }
@media (max-width: 1000px) {
  .contact-layout { grid-template-columns: minmax(0, 338px) minmax(0, 516px); gap: 30px; transform: none; }
}
@media (max-width: 760px) {
  main[data-page="contact"] .hero-page { min-height: 250px; border-radius: 0; }
  main[data-page="contact"] .hero-page h1 { gap: 17px; transform: translateY(-16px); }
  .contact-band { padding: 80px 15px; }
  .contact-layout { grid-template-columns: minmax(0, 1fr); gap: 34px; }
  .contact-info { text-align: center; }
  .contact-info h2 { margin-bottom: 32px; }
  .contact-group + .contact-group { margin-top: 32px; }
  .contact-links { gap: 20px; margin-top: 20px; align-items: center; }
  .contact-band .checks { grid-template-columns: minmax(0, 1.25fr) repeat(2, minmax(0, 1fr)); gap: 12px 15px; }
  .contact-band .checks span { min-width: 0; }
  .contact-band .checks label:nth-child(4) span { max-width: 85px; }
}
