/* Contact-page-specific bits (form inputs + FAQ accordion) */
  #ai_contact .contact-form-card {
    transition: box-shadow 0.3s ease, border-color 0.3s ease;
  }
  #ai_contact .contact-form-card:hover {
    border-color: var(--brand-accent);
    box-shadow: 0 12px 32px rgba(0,0,0,0.04);
  }
  #ai_contact .contact-input:focus {
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.12);
  }
  #ai_contact .faq-item {
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
  }
  #ai_contact .faq-item:hover {
    border-color: var(--brand-accent);
  }
  #ai_contact .faq-item[open] {
    border-color: var(--brand-primary);
    box-shadow: 0 4px 12px rgba(13, 148, 136, 0.08);
  }
  #ai_contact .faq-item[open] .faq-chevron {
    transform: rotate(45deg);
    color: var(--brand-primary);
  }
  #ai_contact .faq-chevron {
    font-size: 22px; line-height: 1;
    transition: transform 0.25s ease, color 0.25s ease;
  }
  #ai_contact .faq-item summary::-webkit-details-marker { display: none; }

  /* Submission states */
  #ai_contact #contact-form-status.is-success {
    display: block; background: #ecfdf5; border: 1px solid #a7f3d0; color: #047857;
  }
  #ai_contact #contact-form-status.is-error {
    display: block; background: #fef2f2; border: 1px solid #fecaca; color: #b91c1c;
  }
  #ai_contact #contact-form-submit:disabled {
    opacity: 0.6; cursor: not-allowed; transform: none;
  }
