.callback-dialog{z-index:1200;font-family:Inter,Arial,sans-serif;background:rgba(23,42,29,.3);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.callback-dialog *{box-sizing:border-box}
.callback-dialog .modal__background{background:transparent!important}
.callback-dialog .modal__container{min-height:100dvh;padding:24px 16px;display:flex;align-items:center;justify-content:center}
.callback-dialog .modal__content{display:block;width:100%;max-width:400px;min-height:0;margin:auto;padding:32px 28px 28px;border:0;border-radius:16px;background:#fff;box-shadow:0 24px 72px #172a1d33}
.callback-dialog .modal__form{width:100%;margin:0}
.callback-dialog .modal__close{top:12px;right:12px;width:36px;height:36px;padding:10px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:#526258;background:transparent;transition:none}
.callback-dialog .modal__close svg{display:block;width:16px;height:16px;fill:currentColor}
.callback-dialog .modal__close:hover{background:#edf3ee}
.callback-dialog .modal__title{max-width:calc(100% - 20px);margin:0 0 10px;font-size:24px;line-height:1.25;font-weight:600;letter-spacing:-.025em;text-align:left;color:#242b28}
.callback-dialog__intro{margin:0 0 24px;font-size:14px;line-height:1.55;color:#607066}
.callback-dialog .modal__label{display:block;margin:0 0 20px}
.callback-dialog__phone>span{display:block;margin-bottom:8px;font-size:13px;line-height:1.4;font-weight:500;color:#3d5043}
.callback-dialog .modal__input{display:block;width:100%;max-width:none;min-height:48px;margin:0;padding:11px 14px;border:1px solid #c3d1c7;border-radius:6px;background:#f6f8f6;font-size:18px;line-height:1.4;font-weight:400;text-align:left;color:#242b28;caret-color:#346b3d;transition:none}
.callback-dialog .modal__input::placeholder{color:#718078;opacity:1}
.callback-dialog .modal__input:focus{border-color:#346b3d;outline:2px solid #346b3d;outline-offset:2px}
.callback-dialog .contact-us__policy-text{margin:0 0 24px;padding:0}
body .callback-dialog .policy_block{display:flex;align-items:center;gap:12px;margin:0;text-align:left}
body .callback-dialog .policy-text{font-size:12px;line-height:1.6;font-weight:400;color:#607066}
.callback-dialog .policy-text a{color:#346b3d;text-decoration:underline;text-underline-offset:3px}
body .callback-dialog .policy_block input.policy-checkbox{appearance:none!important;-webkit-appearance:none!important;position:relative!important;display:block!important;flex:0 0 42px!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:26px!important;margin:0!important;padding:0!important;border:0!important;border-radius:13px!important;background:#b7c4bb!important;cursor:pointer;overflow:visible!important;clip:auto!important;clip-path:none!important;opacity:1!important;visibility:visible!important;transform:none!important}
body .callback-dialog .policy_block input.policy-checkbox:before{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #172a1d26;transform:translateX(0)}
body .callback-dialog .policy_block input.policy-checkbox:checked{background:#5ca768!important}
body .callback-dialog .policy_block input.policy-checkbox:checked:before{transform:translateX(16px)}
.callback-dialog .modal__button{width:100%;max-width:none;min-height:46px;margin:0;padding:12px 20px;border:1px solid #242b28;border-radius:6px;background:#242b28;color:#fff;font-family:inherit;font-size:14px;line-height:1.4;font-weight:600;text-transform:none;transition:none}
.callback-dialog .modal__button:hover{background:#346b3d;border-color:#346b3d;color:#fff}
.callback-dialog .recovery-form-status{margin:18px 0 0;font-size:13px;line-height:1.5}
.callback-dialog .modal__text:empty{display:none}
html.with-modal,html.with-modal body{overflow:hidden!important}
@media(max-width:359px){.callback-dialog .modal__content{padding:28px 22px 24px}.callback-dialog .modal__title{font-size:22px}.callback-dialog__intro{font-size:13px}.callback-dialog .policy-text{font-size:12px}}

body .callback-dialog .is-consent-invalid .policy-text,body .callback-dialog .is-consent-invalid .policy-text a{color:#ad2323}
.callback-dialog form[hidden],.callback-success[hidden]{display:none!important}
.callback-success{text-align:center;padding-top:8px}
.callback-success__mark{width:76px;height:76px;margin:0 auto 22px}
.callback-success__mark svg{display:block;width:100%;height:100%}
.callback-success h2{margin:0 0 12px;color:#242b28;font-size:26px;line-height:1.25;font-weight:600;letter-spacing:-.025em}
.callback-success h2:focus{outline:none!important}
.callback-success p{margin:0 0 28px;color:#607066;font-size:15px;line-height:1.6}
.callback-success:not([hidden]) .callback-success__mark{animation:callback-confirm-in 220ms cubic-bezier(.23,1,.32,1) both}
.callback-success:not([hidden]) path{stroke-dasharray:1;stroke-dashoffset:0;animation:callback-check-draw 550ms 120ms cubic-bezier(.23,1,.32,1) both}
@keyframes callback-confirm-in{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
@keyframes callback-check-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.callback-success .callback-success__mark,.callback-success path{animation:none!important;stroke-dashoffset:0}}
