/* contact — the walkthrough request: copy left, the form card right at >=1024. */
[data-cmp="contact"] .ct, [data-cmp="contact"].ct { background: var(--surface-base); }
[data-cmp="contact"] .ct-hero, [data-cmp="contact"].ct-hero { position: relative; overflow: hidden; padding: var(--space-10) 0 var(--space-12); background: var(--surface-base); }
[data-cmp="contact"] .ct-inner, [data-cmp="contact"].ct-inner { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-10); align-items: start; }

[data-cmp="contact"] .ct-copy, [data-cmp="contact"].ct-copy { max-width: 40rem; }
[data-cmp="contact"] .ct-eyebrow, [data-cmp="contact"].ct-eyebrow { margin: 0 0 var(--space-3); color: var(--accent-active); }
[data-cmp="contact"] .ct-copy .asio-h1, [data-cmp="contact"].ct-copy .asio-h1 { margin: 0; }
[data-cmp="contact"] .ct-green, [data-cmp="contact"].ct-green { color: var(--accent); }
[data-cmp="contact"] .ct-lead, [data-cmp="contact"].ct-lead { margin: var(--space-5) 0 0; max-width: 36rem; }
[data-cmp="contact"] .ct-points, [data-cmp="contact"].ct-points { list-style: none; margin: var(--space-8) 0 0; padding: 0; display: flex; flex-direction: column;
  gap: var(--space-3); color: var(--text-secondary); line-height: 1.5; }
[data-cmp="contact"] .ct-points .ic, [data-cmp="contact"].ct-points .ic { font-size: 16px; --ic-stroke: 2.25; color: var(--accent-hover); }

[data-cmp="contact"] .ct-card, [data-cmp="contact"].ct-card { width: 100%; max-width: 32rem; background: var(--surface-card); border: 1px solid var(--border-default);
  border-radius: var(--radius-xl); box-shadow: var(--asio-shadow-large); padding: var(--space-6); }
@media (min-width: 640px) { [data-cmp="contact"] .ct-card, [data-cmp="contact"].ct-card { padding: var(--space-8); }}

[data-cmp="contact"] .ct-form, [data-cmp="contact"].ct-form { display: grid; gap: var(--space-2); }
[data-cmp="contact"] .ct-form .asio-label, [data-cmp="contact"].ct-form .asio-label { margin: var(--space-2) 0 0; }
[data-cmp="contact"] .ct-form .asio-textarea, [data-cmp="contact"].ct-form .asio-textarea { resize: vertical; }

/* honeypot: visually removed, still in the DOM for bots */
[data-cmp="contact"] .ct-hp, [data-cmp="contact"].ct-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

[data-cmp="contact"] .ct-submit, [data-cmp="contact"].ct-submit { margin-top: var(--space-4); width: 100%; }
[data-cmp="contact"] .ct-fine, [data-cmp="contact"].ct-fine { margin: var(--space-2) 0 0; font-size: 0.75rem; line-height: 1.5; text-align: center; color: var(--text-muted); }

[data-cmp="contact"] .ct-thanks, [data-cmp="contact"].ct-thanks { display: grid; justify-items: center; text-align: center; gap: var(--space-3);
  padding: var(--space-8) var(--space-4); color: var(--text-primary); }
[data-cmp="contact"] .ct-thanks-ic, [data-cmp="contact"].ct-thanks-ic { font-size: 40px; color: var(--accent-hover); }
[data-cmp="contact"] .ct-thanks h2, [data-cmp="contact"].ct-thanks h2 { margin: 0; font-size: 1.5rem; font-weight: 700; letter-spacing: -0.02em; }
[data-cmp="contact"] .ct-thanks p, [data-cmp="contact"].ct-thanks p { margin: 0; color: var(--text-secondary); }

@media (min-width: 1024px) {
  [data-cmp="contact"] .ct-hero, [data-cmp="contact"].ct-hero { padding: var(--space-12) 0 calc(var(--space-12) + var(--space-8)); }
  [data-cmp="contact"] .ct-inner, [data-cmp="contact"].ct-inner { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: var(--space-12); }
  [data-cmp="contact"] .ct-card, [data-cmp="contact"].ct-card { max-width: none; }}