/* Contact page — clean, readable, no clutter. */

main { background: var(--vt-bg-page); color: var(--vt-ink); font-family: var(--vt-font-sans); }

.vc-hero {
  padding: 56px var(--vt-pad-x) 28px;
  border-bottom: 1px solid var(--vt-line-soft);
}
.vc-hero-inner {
  max-width: 760px; margin: 0 auto; text-align: left;
}
.vc-eyebrow {
  font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--vt-ink-4); font-weight: 600; margin-bottom: 10px;
}
.vc-h1 {
  font-family: var(--vt-font-serif);
  font-size: 40px; font-weight: 600; letter-spacing: -0.015em;
  margin: 0 0 12px; line-height: 1.1;
}
.vc-lede {
  font-size: 17px; color: var(--vt-ink-2); margin: 0;
}

.vc-cards { padding: 36px var(--vt-pad-x); }
.vc-cards-inner {
  max-width: 920px; margin: 0 auto;
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px;
}
@media (max-width: 720px) { .vc-cards-inner { grid-template-columns: 1fr; } }
.vc-card {
  background: var(--vt-bg-0); border: 1px solid var(--vt-line);
  border-radius: 12px; padding: 22px;
  display: flex; flex-direction: column; gap: 12px;
}
.vc-card-icon {
  width: 38px; height: 38px;
  border-radius: 8px;
  background: var(--vt-bg-1); border: 1px solid var(--vt-line-soft);
  display: inline-flex; align-items: center; justify-content: center;
  color: var(--vt-ink);
}
.vc-card-title {
  font-size: 17px; font-weight: 600; margin: 0;
}
.vc-card-body {
  font-size: 14px; color: var(--vt-ink-3); margin: 0;
  flex: 1;
}
.vc-card-body a { color: var(--vt-blue); text-decoration: underline; }
.vc-card-actions { display: flex; gap: 6px; flex-wrap: wrap; }

.vc-form-section {
  padding: 64px var(--vt-pad-x);
  background: var(--vt-bg-1);
  border-top: 1px solid var(--vt-line);
}
.vc-form-inner {
  max-width: 720px; margin: 0 auto;
}
.vc-h2 {
  font-family: var(--vt-font-serif);
  font-size: 28px; font-weight: 600; letter-spacing: -0.01em;
  margin: 0 0 6px;
}
.vc-form-sub { font-size: 15px; color: var(--vt-ink-2); margin: 0 0 22px; }

.vc-form {
  background: var(--vt-bg-0); border: 1px solid var(--vt-line);
  border-radius: 12px; padding: 24px;
}
.vc-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 540px) { .vc-form-row { grid-template-columns: 1fr; } }
.vc-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 14px; }
.vc-field span { font-size: 12px; font-weight: 600; color: var(--vt-ink-3); }
.vc-field input,
.vc-field textarea,
.vc-field select {
  border: 1px solid var(--vt-line); border-radius: 6px;
  background: var(--vt-bg-page); padding: 10px 12px;
  font-family: inherit; font-size: 14px; color: var(--vt-ink);
}
.vc-field input:focus,
.vc-field textarea:focus,
.vc-field select:focus { border-color: var(--vt-ink); outline: none; }
.vc-field textarea { resize: vertical; min-height: 100px; }

.vc-form-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.vc-form-foot { font-size: 12.5px; color: var(--vt-ink-4); }
.vc-form-thanks {
  margin-top: 14px; padding: 10px 14px;
  border-radius: 6px;
  font-size: 13.5px;
  background: var(--vt-green-tint); color: var(--vt-green);
  border: 1px solid var(--vt-green);
}
.vc-form-thanks[data-tone="error"] {
  background: var(--vt-red-tint); color: var(--vt-red); border-color: var(--vt-red);
}
