.contact-form{margin:35px 0 10px;max-width:600px}
.contact-form label:not(.contact-consent){display:block;color:var(--muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin:20px 0 7px}
.contact-form input[type=email],.contact-form textarea{display:block;width:100%;border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:13px 15px;outline:0}
.contact-form textarea{resize:vertical;min-height:140px}
.contact-form input[type=email]:focus,.contact-form textarea:focus{border-color:var(--accent)}
.contact-consent{display:flex;align-items:flex-start;gap:9px;margin:20px 0;color:var(--muted);font-size:12px;line-height:1.5}
.contact-consent input{margin-top:4px;accent-color:var(--accent)}
.contact-consent a{text-decoration:underline}
.contact-form .btn{border:1px solid var(--accent);background:var(--accent);color:var(--bg);padding:12px 20px;font-size:11px;letter-spacing:.08em}
.contact-form .btn:hover{background:transparent;color:var(--ink)}
.contact-feedback{font-size:13px;margin:18px 0 0;padding:12px 15px;border-left:2px solid var(--accent)}
.contact-feedback-error{border-color:#d99b8e}
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-map-wrap{margin-top:110px;display:grid;grid-template-columns:30% 1fr;gap:45px;align-items:stretch;border-top:1px solid var(--line);padding-top:45px}
.contact-map-heading h2{font-size:clamp(2rem,3.5vw,3.5rem);margin:15px 0}
.contact-map-heading>p:last-child{color:var(--muted);font-size:13px}
.contact-map{display:block;width:100%;height:380px;border:0;filter:grayscale(1) contrast(.9);opacity:.86}
@media(max-width:767px){.contact-map-wrap{margin-top:65px;display:block}.contact-map-heading{margin-bottom:25px}.contact-map{height:300px}}
