.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.78);backdrop-filter:blur(14px);opacity:0;visibility:hidden;transition:.25s}.modal-backdrop.open{opacity:1;visibility:visible}.contact-modal{position:relative;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;border:1px solid var(--gold-border);border-radius:26px;padding:42px;background:radial-gradient(circle at 15% 0,rgba(214,165,58,.12),transparent 38%),#0d0d0f;box-shadow:0 35px 100px rgba(0,0,0,.72);transform:translateY(20px) scale(.98);transition:.3s cubic-bezier(.22,1,.36,1)}.modal-backdrop.open .contact-modal{transform:none}.modal-close{position:absolute;right:18px;top:16px;width:38px;height:38px;border:1px solid var(--border);border-radius:50%;background:#151517;color:#fff;font-size:24px;cursor:pointer}.contact-modal h2{font-size:32px;line-height:1.12;letter-spacing:-.04em;margin:14px 38px 10px 0}.contact-modal p{color:var(--text);line-height:1.6;margin:0 0 24px}.contact-modal form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-modal label{color:#d9d9d4;font-size:13px;font-weight:600}.contact-modal input{width:100%;height:50px;margin-top:8px;padding:0 14px;border:1px solid var(--border);border-radius:11px;outline:none;background:#151517;color:#fff;font:inherit;transition:.2s}.contact-modal input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(214,165,58,.1)}.contact-modal input.invalid{border-color:#f45b69}.field-error{display:block;min-height:14px;color:#f47c86;font-size:10px;margin-top:4px}.submit-contact{grid-column:1/-1;width:100%;border:0;cursor:pointer;margin-top:2px}.privacy-note{grid-column:1/-1;text-align:center;color:var(--muted);font-size:10px;line-height:1.5}.modal-success{text-align:center;padding:34px 10px 18px}.modal-success[hidden]{display:none}.success-mark{width:74px;height:74px;margin:0 auto 24px;display:grid;place-items:center;border-radius:50%;background:rgba(46,212,122,.12);border:1px solid rgba(46,212,122,.45);color:var(--green);font-size:34px}.modal-success h2{margin-right:0}.modal-success .btn{margin-top:12px;border:0;cursor:pointer}body.modal-open{overflow:hidden}@media(max-width:520px){.contact-modal{padding:30px 20px;border-radius:20px}.contact-modal form{grid-template-columns:1fr}.contact-modal h2{font-size:27px}.submit-contact,.privacy-note{grid-column:1}}
