.home-link { text-decoration: none; }
.skip-link {
  position: absolute;
  top: -100px;
  left: 16px;
  z-index: 3;
  padding: 12px;
  color: var(--ink);
  background: var(--gold);
}
.skip-link:focus { top: 12px; }
.support-layout {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: clamp(24px, 5vw, 72px);
  align-items: start;
  padding-top: 40px;
  padding-bottom: 72px;
}
.support-intro h1 { font-size: clamp(3.2rem, 5.5vw, 5rem); }
.support-intro .lede { max-width: 42ch; }
.help-card {
  margin-top: 32px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(27, 41, 68, 0.72);
}
.help-card h2 { font-size: 1.1rem; }
.help-card ul { padding-left: 20px; color: var(--slate); }
.help-card li + li { margin-top: 12px; }
.help-card a { overflow-wrap: anywhere; }
.safety-note, .submission-note, .field-note, .form-intro {
  color: var(--slate);
  font-size: 0.85rem;
}
.safety-note { margin-top: 24px; max-width: 50ch; }
.support-panel {
  min-width: 0;
  padding: clamp(20px, 3vw, 36px);
  border: 1px solid var(--line);
  border-top: 3px solid var(--teal);
  border-radius: 18px;
  background: var(--ink-soft);
  box-shadow: 0 20px 60px var(--shadow);
}
.support-panel .eyebrow { margin-bottom: 10px; }
.support-panel h2 { font-size: 1.5rem; line-height: 1.25; }
.form-intro { margin: 10px 0 24px; }
.support-panel fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.field { min-width: 0; margin-bottom: 20px; }
.field label { display: block; margin-bottom: 7px; font-size: 0.9rem; font-weight: 600; }
.field input, .field select, .field textarea {
  width: 100%;
  min-height: 48px;
  border: 1px solid rgba(147, 164, 194, 0.6);
  border-radius: 8px;
  padding: 12px;
  background: var(--ink);
  color: var(--cream);
  font: inherit;
  font-size: 1rem;
}
.field textarea { resize: vertical; }
.field input::placeholder, .field textarea::placeholder { color: var(--slate); opacity: 1; }
.field select { color-scheme: dark; }
.field-row + .field-note { margin-top: -12px; margin-bottom: 20px; }
.field-note { margin: 7px 0 0; font-size: 0.78rem; }
.consent { display: flex; align-items: flex-start; gap: 10px; margin: 4px 0 24px; font-size: 0.82rem; }
.consent input { flex-shrink: 0; width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--teal); }
.consent a, .help-card a { color: var(--success); }
#submitTicket {
  width: 100%;
  min-height: 48px;
  padding: 12px 20px;
  border: 0;
  border-radius: 8px;
  color: var(--ink);
  background: var(--gold);
  font-weight: 700;
  cursor: pointer;
}
#submitTicket:hover:not(:disabled) { background: #ffda65; }
#submitTicket:disabled { opacity: 0.65; cursor: wait; }
.support-layout :focus-visible, .home-link:focus-visible {
  outline: 2px solid var(--teal);
  outline-offset: 4px;
}
.form-message { margin-top: 20px; padding: 16px; border: 1px solid currentColor; border-radius: 8px; overflow-wrap: anywhere; }
.form-message[data-kind="success"] { color: var(--success); }
.form-message[data-kind="error"] { color: var(--danger); }
.submission-note { margin: 20px 0 0; font-size: 0.78rem; }
.honeypot { display: none; }
@media (max-width: 800px) {
  .support-layout { grid-template-columns: 1fr; padding-top: 24px; }
  .support-intro .lede, .safety-note { max-width: none; }
}
@media (max-width: 480px) {
  .field-row { grid-template-columns: 1fr; gap: 0; }
  .support-panel { padding: 20px 16px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
