.contact-header { position: relative; height: 80px; gap: 20px; }
.contact-header nav { font-size: 13px; }
.contact-header nav > a { min-height: 44px; }
.contact-main { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); align-items: start; gap: clamp(44px, 7vw, 100px); min-height: calc(100svh - 205px); padding-block: 88px 64px; }
.contact-intro .eyebrow { margin-bottom: 22px; }
.contact-intro h1 { margin: 0 0 24px; font-size: clamp(44px, 5vw, 64px); line-height: 1.05; letter-spacing: -.055em; }
.contact-intro > p:last-child { max-width: 340px; color: var(--muted); font-size: 17px; }
.contact-form { position: relative; display: grid; gap: 24px; min-width: 0; }
.contact-field-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.contact-field { min-width: 0; }
.contact-field label { display: block; margin-bottom: 10px; color: var(--fg); font-size: 14px; font-weight: 500; }
.contact-field input, .contact-field textarea { display: block; width: 100%; min-height: 50px; border: 1px solid #a8bad641; border-radius: 11px; padding: 13px 14px; background: var(--surface); color: var(--fg); font: inherit; font-size: 16px; line-height: 1.5; }
.contact-field textarea { min-height: 210px; resize: vertical; }
.contact-field input:hover, .contact-field textarea:hover { border-color: #a8bad66b; }
.contact-field input:focus-visible, .contact-field textarea:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-color: var(--accent); }
.contact-field-note { margin-top: 8px; color: var(--muted); font-size: 12px; }
.contact-extra { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.contact-verification { min-width: 0; }
.contact-verification > div { max-width: 100%; }
.contact-privacy { color: var(--muted); font-size: 13px; }
.contact-submit-row { display: flex; align-items: center; }
.contact-submit-row button { min-height: 50px; }
.contact-submit-row button:disabled { opacity: .65; transform: none; }
.contact-status { min-height: 26px; margin-top: -9px; font-size: 14px; line-height: 1.65; color: var(--muted); }
.contact-status[data-state="success"] { color: var(--accent); }
.contact-status[data-state="error"], .contact-status[data-state="verification-error"] { color: #ffb6af; }
.contact-noscript { color: var(--muted); font-size: 14px; }
@media (max-width: 900px) {
  .contact-main { grid-template-columns: minmax(0, 1fr); gap: 42px; max-width: 700px; padding-top: 64px; }
  .contact-intro > p:last-child { max-width: 480px; }
}
@media (max-width: 600px) {
  .contact-header { height: 76px; gap: 12px; }
  .contact-header .brand { font-size: 14px; gap: 8px; }
  .contact-header .brand img { width: 32px; height: 32px; }
  .contact-header nav { font-size: 11px; }
  .contact-header nav > a { max-width: 95px; text-align: right; line-height: 1.4; }
  .contact-main { padding-block: 48px 40px; gap: 34px; }
  .contact-intro h1 { font-size: 45px; }
  .contact-intro > p:last-child { font-size: 16px; }
  .contact-field-row { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .contact-form { gap: 22px; }
}
