.callback-is-open{overflow:hidden}
.callback-dialog{width:470px;max-width:calc(100% - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;border-radius:28px;background:#fff;color:#19191e;box-shadow:0 24px 100px rgba(0,0,0,.25);overflow:auto}
.callback-dialog::backdrop{background:rgba(10,10,14,.65);backdrop-filter:blur(5px)}
.callback-dialog[open]{animation:callback-enter .23s ease-out}
.callback-dialog__inner{position:relative;padding:36px}
.callback-dialog__close{position:absolute;top:20px;right:20px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:#f3f3f5;color:#55555f;cursor:pointer}
.callback-dialog__close:hover{background:#e9e9ed}
.callback-dialog__icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:22px;border:1px solid #f0dada;border-radius:18px;background:#fff1f1;color:#be0000}
.callback-dialog__eyebrow{font-size:.65rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em;color:#be0000}
.callback-dialog h2{font-family:inherit;font-size:2.1rem;font-style:normal;font-weight:850;text-transform:none;line-height:1.15;letter-spacing:-.045em;margin:9px 0 13px}
.callback-dialog__inner>p{margin:0 0 24px;font-size:.83rem;line-height:1.7;color:#73737d}
.callback-form{display:grid;gap:17px}
.callback-form>label{display:grid;gap:8px;font-size:.77rem;font-weight:750}
.callback-form input:not([type="hidden"]){width:100%;min-width:0;border:1px solid #dddde2;border-radius:12px;background:#fbfbfc;color:#19191e;padding:14px 15px;font-family:inherit;font-size:16px;line-height:1.35;transition:border-color .2s,box-shadow .2s}
.callback-form input:focus{outline:none;border-color:#be0000;box-shadow:0 0 0 3px rgba(190,0,0,.08)}
.callback-form input::placeholder{color:#a0a0a8}
.callback-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.callback-form__submit{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:0;border-radius:999px;background:#be0000;color:#fff;padding:17px 21px;font-family:inherit;font-size:.81rem;font-weight:800;cursor:pointer;box-shadow:0 8px 20px rgba(190,0,0,.15)}
.callback-form__submit:hover{background:#9e0000}
.callback-form__submit:disabled{cursor:wait;opacity:.6}
.callback-form .callback-form__privacy{margin:0;text-align:center;color:#94949c;font-size:.62rem;line-height:1.7}
.callback-form__privacy a{color:#6c6c76;text-decoration:underline;text-underline-offset:2px}
.callback-form .callback-form__error{margin:0;padding:11px 13px;border-radius:10px;background:#fff0f0;color:#a50000;font-size:.76rem;line-height:1.5}
.callback-success{padding-top:8px;outline:none}
.callback-success>span{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#eaf6ee;color:#258345;font-size:1.4rem}
.callback-success h3{font-size:1.25rem;margin:18px 0 10px}
.callback-success p{font-size:.85rem;line-height:1.7;color:#73737d}
.callback-success button{margin-top:10px;border:0;border-radius:999px;background:#19191e;color:#fff;padding:13px 22px;font-family:inherit;font-weight:750;cursor:pointer}
.callback-form[hidden],.callback-success[hidden],.callback-form__error[hidden]{display:none}
.callback-dialog button:focus-visible{outline:3px solid #e65a62;outline-offset:4px}
@keyframes callback-enter{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}

@media(max-width:640px){.callback-dialog__inner{padding:30px 24px}.callback-dialog h2{font-size:1.9rem}.callback-dialog__close{top:16px;right:16px}}
@media(prefers-reduced-motion:reduce){.callback-dialog[open]{animation:none}.callback-form input{transition:none}}
