.vm-modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px}
.vm-modal[hidden]{display:none}
.vm-modal__backdrop{position:absolute;inset:0;background:rgba(7,29,53,.6);backdrop-filter:blur(4px)}
.vm-modal__panel{position:relative;width:100%;max-width:560px;max-height:calc(100dvh - 32px);overflow-y:auto;background:#fff;padding:36px 32px;box-shadow:0 28px 80px rgba(12,38,70,.3);color:#0a2748}
.vm-modal__close{position:absolute;top:10px;right:14px;border:0;background:none;font-size:32px;line-height:1;color:#607188;cursor:pointer}
.vm-eyebrow{font-size:.68rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#2563eb}
.vm-modal h2{margin:8px 0 6px;font-size:2rem;font-weight:600;letter-spacing:-.04em}
.vm-sub{font-size:.875rem;line-height:1.6;color:#607188;margin-bottom:20px}
.vm-modal form{display:grid;gap:14px}
.vm-row{display:grid;gap:14px;grid-template-columns:1fr 1fr}
.vm-modal label{display:grid;gap:6px;font-size:.75rem;font-weight:700;color:#183653}
.vm-modal input,.vm-modal textarea{width:100%;border:1px solid #dbe4ee;background:#f8fafc;padding:12px 14px;font:inherit;font-size:.9rem;font-weight:500;color:#0a2748;border-radius:0;outline:0}
.vm-modal input:focus,.vm-modal textarea:focus{border-color:#2563eb;background:#fff}
.vm-hp{position:absolute!important;left:-9999px;height:0;opacity:0}
.vm-status{min-height:1.2em;font-size:.85rem;font-weight:600}
.vm-status.ok{color:#15803d}.vm-status.err{color:#b91c1c}
.vm-submit{justify-content:center;border:0;cursor:pointer;padding:1rem 1.5rem;font-family:inherit}
.vm-submit:disabled{opacity:.6;cursor:wait}
@media(max-width:560px){.vm-row{grid-template-columns:1fr}.vm-modal__panel{padding:32px 20px}}
