.contact-layout { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:clamp(32px,7vw,110px); padding-block:clamp(52px,8vw,110px); align-items:start; }
.contact-intro h1,.contact-result h1 { font-size:clamp(50px,6.5vw,90px); line-height:1.03; }
.contact-intro h1 em { color:var(--cue); }
.contact-intro .lead { font-size:clamp(17px,2vw,21px); margin:20px 0 28px; color:var(--muted); max-width:34ch; }
.contact-alternate { border-top:1px solid var(--line-2); padding-top:16px; max-width:37ch; }
.contact-alternate p { color:var(--muted); font-size:14px; margin-bottom:.55em; }
.contact-form { min-width:0; padding:clamp(20px,3vw,38px); border:1px solid var(--line-2); background:var(--ink-2); border-radius:8px; }
.contact-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:20px; }
.contact-form label { display:block; min-width:0; font-weight:650; font-size:14px; }
.contact-form input,.contact-form select,.contact-form textarea { display:block; margin-top:7px; width:100%; min-height:46px; color:var(--text); background:var(--ink-1); border:1px solid #646975; border-radius:4px; font:400 16px/1.5 var(--sans); padding:10px 12px; }
.contact-form textarea { resize:vertical; min-height:120px; }
.contact-hint { font-size:13px; color:var(--muted); margin-top:7px; }
.contact-trap { display:none; }
.contact-actions { margin-top:22px; }
.contact-status:not(:empty) { margin-top:15px; color:var(--agent-strong); }
.contact-result { padding-block:80px; }
.contact-result p:not(.eyebrow) { margin:1.25em 0; }
@media (max-width:860px) { .contact-layout { grid-template-columns:1fr; max-width:660px; gap:30px; } }
@media (max-width:580px) { .contact-row { grid-template-columns:1fr; } .contact-actions button { width:100%; } }
