/* Homepage contact section, compact. Sizing/layout only; text and fonts unchanged. */
/* ---------- shared tightening ---------- */
.connected-home .contact.cx { padding: clamp(64px, 6vw, 96px) var(--gutter, clamp(24px, 6vw, 100px)); gap: clamp(32px, 4vw, 64px); align-items: start; }
.connected-home .contact.cx .contact-copy > .section-tag { margin: 0 0 18px; }
.connected-home .contact.cx h2 { font-size: clamp(2.2rem, 3.3vw, 3.5rem); line-height: 1.02; }
.connected-home .contact.cx .contact-lead { margin: 18px 0 26px; max-width: 46ch; font-size: .98rem; line-height: 1.7; }
.connected-home .contact.cx .contact-promises { gap: 0; }
.connected-home .contact.cx .contact-promises article { grid-template-columns: 34px 1fr; gap: 14px; padding: 13px 0; align-items: start; }
.connected-home .contact.cx .contact-promises article > span { width: 34px; height: 34px; }
.connected-home .contact.cx .contact-promises svg { width: 18px; height: 18px; }
.connected-home .contact.cx .contact-promises h3 { margin: 0 0 3px; font-size: .92rem; }
.connected-home .contact.cx .contact-promises p { margin: 0; font-size: .84rem; line-height: 1.5; }
.connected-home .contact.cx .contact-form { padding: clamp(22px, 2.4vw, 32px); }
.connected-home .contact.cx .form-heading { margin-bottom: 18px; }
.connected-home .contact.cx .form-heading .section-tag { margin: 0 0 8px; }
.connected-home .contact.cx .form-heading h3 { margin: 0; font-size: clamp(1.4rem, 1.9vw, 1.9rem); line-height: 1.15; }
.connected-home .contact.cx .form-grid { gap: 12px 14px; }
.connected-home .contact.cx .form-grid label > span { margin-bottom: 6px; font-size: .62rem; }
.connected-home .contact.cx .contact-form :is(input, select) { min-height: 44px; padding-block: 9px; font-size: .92rem; }
.connected-home .contact.cx .contact-form textarea { height: 96px; min-height: 96px; font-size: .92rem; resize: vertical; }
.connected-home .contact.cx .contact-form button[type="submit"] { margin-top: 16px; min-height: 46px; }
.connected-home .contact.cx .form-note { margin-top: 12px; font-size: .74rem; line-height: 1.6; }

/* ---------- two columns, three fields per row ---------- */
@media (min-width: 1001px) {
  .connected-home .contact.cx { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
  .connected-home .contact.cx .form-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .connected-home .contact.cx .form-grid > label { grid-column: span 2; }
  .connected-home .contact.cx .form-grid > label:nth-child(4) { grid-column: span 3; }
  .connected-home .contact.cx .form-grid > label.form-wide:nth-child(5) { grid-column: span 3; }
  .connected-home .contact.cx .form-grid > label.form-wide:nth-child(6) { grid-column: 1 / -1; }
}

/* ---------- tablet / phone ---------- */
@media (max-width: 1000px) {
  .connected-home .contact.cx { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .connected-home .contact.cx { padding: 56px 18px; }
  .connected-home .contact.cx h2 { font-size: clamp(2rem, 9vw, 2.6rem); }
}

/* ---------- polish ---------- */
.connected-home .contact.cx .contact-form .contact-copy-email { display: inline-flex; width: auto; min-height: 0; margin: 0 0 0 8px; padding: 3px 9px; font-size: .64rem; vertical-align: middle; }
.connected-home .contact.cx .contact-form .form-grid :is(input, select) { height: 44px; min-height: 44px; padding-top: 0; padding-bottom: 0; }
.connected-home .contact.cx .form-note { text-align: left; }
.connected-home .contact.cx { min-height: 0 !important; height: auto !important; }
