.contact-visual{position:sticky;top:0;align-self:start;height:100svh;min-height:600px}
.contact-form{margin:34px 0 42px;padding:30px 0;border-top:1px solid #d6d3c9;border-bottom:1px solid #d6d3c9}
.contact-form h3{font:30px/1.2 Georgia,serif;margin:0 0 8px}
.contact-form .contact-required{font-size:16px;color:#666c61;margin:0 0 24px}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}
.contact-form label{display:block;font-size:16px;line-height:1.5;letter-spacing:0;text-transform:none}
.contact-form input,.contact-form textarea{display:block;box-sizing:border-box;width:100%;min-width:0;margin:8px 0 0;border:1px solid #b8bdb1;border-radius:0;background:#faf9f5;color:#242923;font:16px/1.5 Arial,sans-serif;padding:12px;min-height:48px}
.contact-form textarea{resize:vertical;min-height:150px}
.contact-message{grid-column:1/-1}
.contact-form .contact-privacy{font-size:16px;line-height:1.7;margin:22px 0;color:#62685e}
.contact-privacy a{text-decoration:underline;text-underline-offset:3px}
.contact-submit{min-height:48px;cursor:pointer}
.contact-submit:disabled{opacity:.65;cursor:wait}
.contact-status{font-size:16px;line-height:1.65;padding:16px 18px;margin:20px 0 0;border:1px solid #8d9a80;background:#edf1e9;color:#314328;overflow-wrap:anywhere}
.contact-status:empty{display:none}
.contact-status[data-state=error]{border-color:#bb8c79;background:#faf0eb;color:#793e29}
@media(max-width:1050px){.contact-fields{grid-template-columns:1fr}.contact-content{padding-left:8%;padding-right:8%}}
@media(max-width:760px){.contact-visual{position:relative;height:360px;min-height:0}.contact-content{padding:44px 25px}.contact-form{margin-top:28px}.contact-submit{width:100%}.contact-form h3{font-size:28px}}
