.contact-grid { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(280px, .88fr); gap: 48px; align-items: stretch; }
.contact-form { padding: 27px; border: 1px solid var(--line); background: #fff; }
.contact-form h2 { margin: 0 0 8px; font-size: 1.5rem; font-weight: 500; }
.contact-form > p:not(.info-eyebrow):not(.form-success) { margin: 0 0 23px; color: var(--muted); font-size: .875rem; line-height: 1.75; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
.form-field { display: block; margin-bottom: 16px; color: var(--ink); font-size: .8125rem; font-weight: 500; }
.form-field.full { grid-column: 1 / -1; }
.form-field input, .form-field select, .form-field textarea {
  display: block;
  width: 100%;
  margin-top: 7px;
  padding: 10px 12px;
  border: 1px solid #c9d3df;
  border-radius: 4px;
  background: #fff;
  color: var(--ink);
  font-size: .875rem;
}
.form-field input, .form-field select { min-height: 46px; }
.form-field textarea { min-height: 125px; resize: vertical; line-height: 1.65; }
.form-field input:focus, .form-field select:focus, .form-field textarea:focus { outline: 3px solid #dceafd; border-color: #8ab4e9; }
.form-actions { display: flex; align-items: center; gap: 14px; }
.form-actions .primary { min-height: 45px; font-size: .875rem; }
.form-hint { color: var(--muted); font-size: .75rem; line-height: 1.5; }
.form-success { margin: 17px 0 0; padding: 12px 14px; border: 1px solid #cbe0f7; background: #f5f9fe; color: #315b8e; font-size: .8125rem; line-height: 1.6; }
.contact-quick { padding: 25px 27px; border: 1px solid var(--line); background: #f8fafc; }
.contact-quick h2 { margin: 0 0 7px; font-size: 1.45rem; font-weight: 500; }
.contact-quick > p { margin: 0 0 19px; color: var(--muted); font-size: .875rem; line-height: 1.75; }
.contact-row { display: grid; grid-template-columns: 31px 1fr; gap: 12px; align-items: start; padding: 15px 0; border-top: 1px solid var(--line); }
.contact-row:first-of-type { border-top: 0; padding-top: 0; }
.contact-row .icon { width: 22px; height: 22px; margin-top: 2px; color: var(--blue); }
.contact-row h3 { margin: 0 0 3px; font-size: .875rem; font-weight: 500; }
.contact-row p, .contact-row a { margin: 0; color: var(--muted); font-size: .8125rem; line-height: 1.75; }
.contact-row a { color: var(--blue); }
.contact-row a:hover { color: var(--blue-hover); }
.contact-phone { color: var(--blue)!important; font-size: 1.35rem!important; font-weight: 600; }

@media (max-width: 899px) {
  .contact-grid { gap: 30px; }
}
@media (max-width: 599px) {
  .contact-grid { grid-template-columns: 1fr; gap: 25px; }
  .contact-form, .contact-quick { padding: 20px; }
  .form-grid { grid-template-columns: 1fr; }
  .form-field.full { grid-column: auto; }
  .form-actions { display: block; }
  .form-hint { display: block; margin-top: 10px; }
}
/* Keep older cached preview markup from resurfacing the removed extra section. */
.contact-main > .info-opening,
.contact-main > .info-section:has(.contact-response) { display: none !important; }
