.wg-contact-form button .wg-form-pending { display:none; }
.wg-contact-form button.is-submitting { cursor:wait; }
.wg-contact-form button.is-submitting > :not(.wg-form-pending) { visibility:hidden; }
.wg-contact-form button.is-submitting .wg-form-pending { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; gap:10px; z-index:4; color:#200f38; background:#fad4db; border-radius:inherit; }
.wg-form-spinner { width:17px; height:17px; box-sizing:border-box; border:2px solid #200f3833; border-top-color:#200f38; border-radius:50%; animation:wg-form-spin .75s linear infinite; }
@keyframes wg-form-spin { to { transform:rotate(360deg); } }
.wg-form-modal-open { overflow:hidden; }
.wg-form-success-dialog { box-sizing:border-box; width:min(460px,calc(100vw - 40px)); max-height:calc(100dvh - 40px); margin:auto; padding:42px 32px 32px; border:1px solid #ffffff26; border-radius:20px; background:#200f38; color:#faf9f6; text-align:center; box-shadow:0 24px 90px #11091d66; font-family:inherit; }
.wg-form-success-dialog[open] { animation:wg-form-modal-in .3s ease both; }
.wg-form-success-dialog::backdrop { background:#10081db3; backdrop-filter:blur(5px); -webkit-backdrop-filter:blur(5px); }
.wg-form-success-check { display:grid; place-items:center; width:56px; height:56px; border-radius:50%; background:#fad4db; color:#200f38; margin:0 auto 22px; font-size:28px; line-height:1; }
.wg-form-success-dialog h2 { font-size:30px; line-height:1.15; font-weight:500; letter-spacing:-.025em; margin:0 0 16px; color:inherit; }
.wg-form-success-dialog p { font-size:16px; line-height:1.6; margin:0 0 28px; color:#e2dbe9; }
.wg-form-modal-close { position:absolute; right:12px; top:12px; display:grid; place-items:center; width:32px; height:32px; padding:0; border:0; border-radius:8px; background:transparent; color:#faf9f6; font:28px/1 sans-serif; cursor:pointer; }
.wg-form-modal-close:hover { background:#ffffff1a; }
.wg-form-modal-done { display:block; width:100%; min-height:48px; border:0; border-radius:8px; background:#fad4db; color:#200f38; font-family:inherit; font-weight:500; font-size:16px; line-height:1.3; cursor:pointer; transition:background .3s ease; }
.wg-form-modal-done:hover { background:#f6bec9; }
.wg-form-success-dialog button:focus-visible { outline:2px solid #fad4db; outline-offset:4px; }
@keyframes wg-form-modal-in { from { opacity:0; transform:translateY(12px) scale(.98); } to { opacity:1; transform:none; } }
@media(prefers-reduced-motion:reduce) { .wg-form-success-dialog[open],.wg-form-spinner { animation:none; } }

.wg-contact-form button.is-submitting { position:relative; opacity:1; }
.wg-contact-form button.is-submitting .wg-form-pending { visibility:visible; opacity:1; transform:none; pointer-events:none; }
.wg-contact-form button.is-submitting .wg-form-spinner { display:block; flex:0 0 18px; width:18px; height:18px; }
