/* Additional modal layer; existing page styles are unchanged. */
.nv-dialog{box-sizing:border-box;width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #e7ecf3;border-radius:18px;background:#fff;color:#17233B;box-shadow:0 30px 90px rgba(23,35,59,.25);font-family:Manrope,system-ui,Arial,sans-serif;overflow:auto}
.nv-dialog::backdrop{background:rgba(23,35,59,.46);backdrop-filter:blur(4px)}
.nv-dialog *{box-sizing:border-box}
.nv-dialog-panel{padding:30px}
.nv-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}
.nv-dialog-brand{display:flex;gap:8px;align-items:center;font-size:14px;font-weight:800;letter-spacing:.1px}
.nv-dialog-mark{color:#1E6DE0;font-size:24px;font-weight:800}
.nv-dialog-close{flex:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #e7ecf3;border-radius:10px;background:#f7f9fc;color:#667085;font:inherit;font-size:24px;cursor:pointer}
.nv-dialog-kicker{margin:0 0 10px;color:#1E6DE0;font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase}
.nv-dialog h2{margin:0 0 14px;font-size:clamp(24px,4vw,30px);line-height:1.2;font-weight:800;letter-spacing:-.3px}
.nv-dialog p{margin:0 0 18px;color:#667085;font-size:14px;line-height:1.7}
.nv-dialog ul{margin:0 0 24px;padding-inline-start:20px;color:#5b6676;font-size:14px;line-height:1.7}
.nv-dialog li{margin:10px 0}
.nv-dialog label{display:block;margin:0 0 7px;color:#3a4657;font-size:13px;font-weight:600}
.nv-dialog-field{margin-bottom:17px}
.nv-dialog input,.nv-dialog textarea,.nv-dialog select{width:100%;padding:12px 14px;border:1px solid #dfe5ee;border-radius:10px;background:#fff;color:#17233B;font:inherit;font-size:14px;line-height:1.5}
.nv-dialog textarea{min-height:104px;resize:vertical}
.nv-dialog input:focus,.nv-dialog textarea:focus,.nv-dialog select:focus{border-color:#1E6DE0;outline:3px solid rgba(30,109,224,.12);outline-offset:0}
.nv-dialog button:focus-visible,.nv-dialog a:focus-visible{outline:3px solid rgba(30,109,224,.35);outline-offset:3px}
.nv-dialog-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px 20px;border:0;border-radius:10px;background:#1E6DE0;color:#fff;font:inherit;font-weight:700;font-size:14px;cursor:pointer;transition:background .2s}
.nv-dialog-button:hover{background:#155CE0}
.nv-dialog-button:disabled{cursor:wait;opacity:.65}
.nv-dialog-consent{display:flex!important;align-items:flex-start;gap:10px;margin:0 0 18px!important;font-size:12px!important;font-weight:400!important;line-height:1.6;color:#667085!important}
.nv-dialog-consent input{width:17px;height:17px;flex:none;margin:3px 0 0;padding:0;accent-color:#1E6DE0}
.nv-dialog a{color:#1E6DE0}
.nv-dialog-status{margin:12px 0 0!important;font-size:13px!important;min-height:0}
.nv-dialog-error{color:#be123c!important}
.nv-dialog-success{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:20px;border-radius:16px;background:#eaf8ef;color:#16a34a;font-size:30px;font-weight:700}
.nv-dialog-trap{position:absolute!important;inset-inline-start:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.nv-dialog-note{font-size:12px!important;margin-bottom:18px!important}
@media(max-width:520px){.nv-dialog-panel{padding:22px}.nv-dialog-top{margin-bottom:18px}.nv-dialog{border-radius:15px}.nv-dialog input,.nv-dialog textarea,.nv-dialog select{font-size:16px}}
@media(prefers-reduced-motion:reduce){.nv-dialog-button{transition:none}}
