.asg-contact-form { margin: 0; }
.asg-contact-form .asg-contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; }
.asg-contact-form .asg-contact-field { display: flex; flex-direction: column; gap: 5px; }
.asg-contact-form .asg-contact-field--wide { grid-column: 1 / -1; }
.asg-contact-form label { font-weight: 600; color: #333; font-size: 14px; }
.asg-contact-form input, .asg-contact-form textarea { width: 100%; border: 1px solid #d8d8d8; border-radius: 3px; padding: 10px 12px; color: #333; background: #fff; }
.asg-contact-form textarea { min-height: 132px; resize: vertical; }
.asg-contact-form .asg-contact-actions { margin-top: 18px; }
.asg-contact-form .asg-contact-status { min-height: 1.5em; margin-top: 12px; font-size: 14px; }
.asg-contact-form .asg-contact-status.is-success { color: #19842f; }
.asg-contact-form .asg-contact-status.is-error { color: #b3261e; }
.asg-contact-form .asg-contact-hp { display: none !important; }
@media (max-width: 575px) {
  .asg-contact-form .asg-contact-grid { grid-template-columns: 1fr; }
  /* The legacy popup plugin does not reliably open through the mobile drawer.
     Keep one real contact form available in document flow on small screens. */
  [data-asg-contact-popup].mfp-hide { display: block !important; position: static; margin: 18px 0; }
}
