.contact{padding:96px 0 104px}
.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;align-items:start}
.contact-intro h2{margin-top:27px}
.contact-intro>p:not(.eyebrow){color:var(--gray);font-size:1rem;line-height:1.8;max-width:355px;margin-top:24px}
.contact-panel{min-width:0}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 20px}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.field-full{grid-column:1/-1}
.field label{font-size:.875rem;font-weight:550;color:var(--text)}
.field label>span:not(.field-optional){color:var(--blue)}
.field .field-optional{font-size:.75rem;color:var(--gray);font-weight:400}
.field input,.field textarea{width:100%;min-width:0;background:white;border:1px solid #bdc8d6;border-radius:3px;padding:12px 14px;font-family:var(--body);font-size:1rem;line-height:1.5;color:var(--text);transition:border-color .2s,box-shadow .2s}
.field input{min-height:49px}
.field textarea{resize:vertical;min-height:140px}
.field input:hover,.field textarea:hover{border-color:#8397b0}
.field input:focus,.field textarea:focus{border-color:var(--blue);outline:2px solid #2864ed28;outline-offset:2px}
.field input:user-invalid,.field textarea:user-invalid{border-color:#a13333}
.field textarea::placeholder{color:#708096;opacity:1}
.field-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.75rem;color:var(--gray);line-height:1.5}
#message-count{font-variant-numeric:tabular-nums}
.contact-privacy{font-size:.75rem;line-height:1.8;color:var(--gray);margin-top:22px;max-width:540px}
.contact-privacy a{text-decoration:underline;text-underline-offset:3px}
.contact-actions{display:flex;align-items:center;gap:24px;margin-top:24px;flex-wrap:wrap}
.contact-actions button{border:0;cursor:pointer;font-family:var(--body)}
.contact-actions button:disabled{opacity:.65;cursor:wait;transform:none}
.contact-actions>p{font-size:.75rem;line-height:1.6;color:var(--gray)}
.contact-result{background:#eaf0ff;color:#163d87;border:1px solid #b9cbee;border-left:3px solid var(--blue);border-radius:3px;padding:17px 20px;margin-bottom:25px;font-size:1rem;line-height:1.6}
.contact-result[hidden]{display:none}
.form-trap{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}
@media(max-width:1000px){.contact-grid{gap:6%;grid-template-columns:.95fr 1.2fr}.contact-actions{gap:16px}}
@media(max-width:820px){.contact{padding:75px 0 80px}.contact-grid{grid-template-columns:1fr;gap:36px}.contact-intro>p:not(.eyebrow){max-width:540px;margin-top:20px}.contact-intro h2{margin-top:23px}.contact-panel{max-width:670px}}
@media(max-width:600px){.contact{padding:55px 0 62px}.contact-grid{gap:30px}.contact-intro h2{font-size:2.3125rem}.contact-fields{gap:18px 14px}.field textarea{min-height:148px}.contact-actions{align-items:flex-start;flex-direction:column;gap:14px}.contact-actions>p br{display:none}.contact-privacy{font-size:.8125rem}}
@media(max-width:420px){.contact-fields{grid-template-columns:1fr}.contact-actions .button{width:100%}}
@media print{.contact{padding:30px 0}.contact-grid{grid-template-columns:1fr}.contact-panel{display:none}}
