.support-contact {
  --field-border: #808981;
  --error: #b23a2b;
  --focus: #92540d;
  max-width: 680px;
  margin-inline: auto;
  padding-block: 52px 64px;
}
.support-contact h1 { font-size: clamp(2.1rem, 4vw, 3rem); letter-spacing: -0.045em; }
.support-contact .intro { font-size: 18px; margin-top: 16px; max-width: none; }
#support-form { margin-top: 28px; }
.form-field { display: grid; gap: 8px; margin-bottom: 20px; }
.form-field label { font-size: 16px; font-weight: 600; }
.optional { font-weight: 400; color: var(--muted); }
.form-field input, .form-field textarea {
  width: 100%; min-width: 0; min-height: 48px; padding: 12px;
  border: 1px solid var(--field-border); border-radius: 6px;
  background: #fff; color: var(--ink); font: inherit; font-size: 16px; line-height: 1.5;
}
.form-field textarea { resize: vertical; }
.form-field input:focus-visible, .form-field textarea:focus-visible,
#support-submit:focus-visible, .form-status:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.form-field [aria-invalid="true"] { border-color: var(--error); }
.field-error, .form-status.is-error { color: var(--error); }
.field-error { font-size: 14px; }
.form-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
#support-submit { margin-top: 18px; font-family: inherit; cursor: pointer; }
#support-submit:disabled { opacity: 0.7; cursor: wait; }
.form-status { margin-top: 20px; font-size: 16px; border-radius: 4px; }
.privacy-contact { color: var(--muted); font-size: 14px; margin-top: 28px; }
.form-status, .privacy-contact { overflow-wrap: anywhere; }
[hidden] { display: none !important; }
@media (max-width: 420px) {
  .support-contact { padding-top: 40px; }
  #support-submit { width: 100%; }
}
