.contact-dialog{width:min(620px,calc(100% - 24px));max-height:calc(100vh - 32px);overflow:auto;border:1px solid var(--line);border-radius:22px;padding:0;background:var(--soft);color:var(--text);box-shadow:var(--shadow)}
.contact-dialog::backdrop{background:rgba(2,8,18,.78);backdrop-filter:blur(7px)}
.contact-card{display:grid;gap:16px;padding:28px}
.contact-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.contact-card h2{font-size:clamp(30px,6vw,44px);margin:7px 0 0}
.contact-close{width:36px;height:36px;flex:none;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--text);font-size:22px;cursor:pointer}
.contact-form{display:grid;gap:13px}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.contact-form label>span{display:block;margin:0 0 7px 2px;color:var(--muted);font-size:12px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:11px;background:var(--bg);color:var(--text);font:inherit;outline:none}
.contact-form textarea{min-height:100px;resize:vertical;line-height:1.5}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--blue2);box-shadow:0 0 0 3px rgba(75,156,255,.12)}
.contact-form .contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-status{min-height:20px;margin:0;color:var(--muted);font-size:12px}
.contact-turnstile{min-height:65px}
@media(max-width:600px){.contact-card{padding:21px}.contact-fields{grid-template-columns:1fr}}
