  .contact { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 56px; align-items: start; }
  @media (max-width: 880px) { .contact { grid-template-columns: 1fr; gap: 40px; } }
  .ci-block { display: flex; gap: 14px; padding: 18px 0; border-bottom: 1px solid var(--line); }
  .ci-block:last-child { border: 0; }
  .ci-ico { width: 40px; height: 40px; flex: none; border-radius: var(--r); display: grid; place-items: center; background: rgba(59,130,246,.10); border: 1px solid rgba(59,130,246,.22); color: var(--blue-hi); }
  .ci-ico svg { width: 18px; height: 18px; }
  .ci-block h4 { font-family: var(--display); font-size: 15px; margin: 0 0 3px; }
  .ci-block p { margin: 0; font-size: 14px; color: var(--text-2); }
  .ci-block a { color: var(--blue-hi); }

  .form-card { background: linear-gradient(180deg, var(--surface), var(--navy)); border: 1px solid var(--line); border-radius: var(--r-xl); padding: clamp(24px, 3vw, 38px); }
  .fld { margin-bottom: 18px; }
  .fld label { display: block; font-family: var(--mono); font-size: 12px; letter-spacing: .06em; color: var(--text-3); margin-bottom: 8px; text-transform: uppercase; }
  .fld .req { color: var(--purple-hi); }
  /* .input/.select/.textarea base + focus + error live in sf.css (global). */
  .textarea { resize: vertical; min-height: 120px; }
  .select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23647089' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; }
  .fld-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
  @media (max-width: 520px) { .fld-row { grid-template-columns: 1fr; } }
  .fld .msg { font-size: 12px; color: #f87171; margin-top: 6px; display: none; font-family: var(--mono); }
  .fld.err .msg { display: block; }
  .check-row { display: flex !important; align-items: flex-start; gap: 10px; text-transform: none !important; letter-spacing: 0 !important; line-height: 1.45; cursor: pointer; }
  .check-row input { width: 16px; height: 16px; margin-top: 2px; accent-color: var(--blue); flex: none; }
  .check-row span { font-family: var(--sans); font-size: 13px; color: var(--text-2); }
  .form-ok { text-align: center; padding: 50px 20px; }
  .form-ok .tick { width: 56px; height: 56px; margin: 0 auto 18px; border-radius: 50%; display: grid; place-items: center; background: rgba(34,197,94,.14); border: 1px solid rgba(34,197,94,.3); color: #4ade80; }
  .form-ok .tick svg { width: 26px; height: 26px; }
  .privacy { font-family: var(--mono); font-size: 11.5px; color: var(--text-3); margin-top: 6px; }
  .form-error { color: #f87171; line-height: 1.5; }
