.contact-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:clamp(20px,4vw,40px)}
.contact-panel h2{margin-top:0}.contact-panel>p{color:#526174;line-height:1.6}
.contact-form{display:grid;gap:20px;margin-top:24px}.contact-required{font-size:13px;color:#64748b;margin:0}
.contact-field{display:grid;gap:8px;min-width:0}.contact-field label{font-weight:600;font-size:14px}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;background:#fff;padding:12px 14px;font:inherit;color:#162338}
.contact-field textarea{resize:vertical;min-height:150px}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{outline:2px solid #1685df;outline-offset:2px}
.contact-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-attachments{padding:18px;border:1px dashed #cbd5e1;border-radius:10px;background:#f8fafc}
.contact-attachments input{border:0;padding:0;background:transparent;font-size:14px}.contact-field small,.contact-privacy{font-size:13px;line-height:1.6;color:#64748b}
.contact-privacy{margin:0}.contact-form .button{justify-self:start;border:0;cursor:pointer}.contact-notice{padding:16px;border-radius:8px;margin:20px 0;line-height:1.6}
.contact-success{background:#e9f8ee;color:#176335}.contact-error{background:#fff1f1;color:#a31c1c}.contact-direct{margin:28px 0 0;font-size:14px}
.contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:600px){.contact-row{grid-template-columns:1fr}.contact-form .button{width:100%;justify-self:stretch}}
