/* Shared coming-soon modal used across every page */
body.modal-open{overflow:hidden}
.site-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:20px}
.site-modal.open{display:flex}
.modal-backdrop{position:absolute;inset:0;background:rgba(7,15,28,.62);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.modal-dialog{position:relative;width:min(100%,500px);padding:36px 34px 30px;border-radius:24px;background:#fff;border:1px solid #dfe6f1;box-shadow:0 28px 90px rgba(2,8,23,.28);text-align:center;animation:modalCommonIn .2s ease-out}
.modal-icon{width:58px;height:58px;margin:0 auto 18px;border-radius:18px;background:#eaf2ff;color:#2f6ce5;display:grid;place-items:center}
.modal-icon svg{display:block;width:28px!important;height:28px!important;fill:none!important;stroke:currentColor!important;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.modal-icon svg circle,.modal-icon svg path{fill:none!important;stroke:currentColor!important}
.modal-dialog h2{margin:0 0 12px;font-size:23px;line-height:1.45;letter-spacing:-.025em;color:#0f172a}
.modal-dialog p{margin:0 auto 25px;max-width:410px;color:#64748b;font-size:15px;line-height:1.82;white-space:pre-line}
.modal-close-x{position:absolute;top:13px;right:13px;width:38px;height:38px;border:0;border-radius:50%;background:transparent;color:#8793a4;font-size:25px;line-height:1;cursor:pointer}
.modal-close-x:hover{background:#f2f6fb;color:#0f172a}
.modal-action{display:inline-flex;align-items:center;justify-content:center;min-width:132px;border:0;border-radius:12px;padding:12px 22px;background:#2f6ce5;color:#fff;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}
.modal-action:hover{filter:brightness(.97)}
@keyframes modalCommonIn{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:560px){.modal-dialog{padding:34px 22px 26px;border-radius:20px}.modal-dialog h2{font-size:20px}.modal-dialog p{font-size:14px}}
