body.ss-callback-open { overflow: hidden; }
.ss-header-max img { display: inline-block; width: 16px; height: 16px; vertical-align: -2px; }
.ss-header-max:hover { opacity: .8; }
#pxl-header-mobile .ss-menu-callback > a { margin-top: 18px; padding: 14px; border-radius: 8px; background: #ffd025; color: #194b43; text-align: center; }
.ss-callback-dialog:not([open]) { display: none; }
.ss-callback-dialog {
    position: fixed;
    inset: 0;
    margin: auto;
    padding: 0;
    width: min(680px, calc(100vw - 56px));
    max-width: none;
    max-height: calc(100dvh - 60px);
    overflow: visible;
    border: 0;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 28px 60px rgb(0 0 0 / 30%);
    color: #26282c;
}
.ss-callback-dialog::backdrop { background: rgb(21 26 34 / 62%); backdrop-filter: blur(2px); }
.ss-callback-dialog, .ss-callback-dialog * { box-sizing: border-box; }
.ss-callback-content { padding: 46px 38px 30px; max-height: calc(100dvh - 60px); overflow-y: auto; font-family: Arial, sans-serif; }
.ss-callback-dialog .ss-callback-close {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 3px solid #2d2d2d;
    border-radius: 50%;
    background: #fff;
    color: #2d2d2d;
    font: 34px/1 Arial, sans-serif;
    cursor: pointer;
}
.ss-callback-dialog #ss-callback-title { margin: 0; color: #26282c; font-family: inherit; font-size: clamp(26px, 3.2vw, 42px); font-weight: 800; line-height: 1.12; text-align: center; }
.ss-callback-dialog #ss-callback-subtitle { margin: 16px auto 24px; max-width: 88%; color: #7f7f82; font-size: clamp(15px, 1.5vw, 20px); line-height: 1.35; text-align: center; }
.ss-callback-dialog form p { margin: 0; }
.ss-callback-dialog form label { display: block; margin: 14px 0 8px; font-size: 12px; font-weight: 500; letter-spacing: .16em; color: #74787d; }
.ss-callback-dialog input[type="text"], .ss-callback-dialog input[type="tel"] { width: 100%; height: 52px; padding: 8px 14px; border: 2px solid #e4e7ea; border-radius: 2px; font: 16px/1.4 Arial, sans-serif; background: #fff; color: #2f3338; }
.ss-callback-dialog input:focus-visible, .ss-callback-dialog a:focus-visible, .ss-callback-dialog button:focus-visible { outline: 2px solid #2cb770; outline-offset: 3px; }
.ss-callback-dialog input.ss-callback-submit { display: block; width: 100%; height: 54px; padding: 0 16px; margin-top: 24px; border: 0; border-radius: 12px; background: #ffd025; color: #194b43; font: 700 20px/1.3 Arial, sans-serif; letter-spacing: .02em; cursor: pointer; }
.ss-callback-dialog input.ss-callback-submit:hover { background: #f5c51d; }
.ss-callback-dialog input.ss-callback-submit:disabled { opacity: .65; cursor: wait; }
.ss-callback-dialog .wpcf7-spinner { display: none; }
.ss-callback-dialog form.submitting .wpcf7-spinner { display: inline-block; margin-top: 10px; }
.ss-callback-dialog .wpcf7-not-valid-tip { font-size: 13px; line-height: 1.4; margin-top: 5px; }
.ss-callback-dialog .wpcf7-response-output { margin: 14px 0 0; padding: 10px; font-size: 14px; line-height: 1.4; }
.ss-callback-messengers { margin-top: 18px; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.ss-callback-messengers-text { color: #5f656c; font-size: 14px; line-height: 1.4; text-align: center; }
.ss-callback-messengers-links { display: flex; align-items: center; justify-content: center; gap: 12px; }
.ss-callback-dialog .ss-callback-messenger { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid #e4e7ea; border-radius: 50%; background: #fff; }
.ss-callback-messenger img { display: block; width: 28px; height: 28px; }
.ss-callback-messenger i { font-size: 26px; line-height: 1; }
.ss-callback-messenger:hover { border-color: #aab4ba; box-shadow: 0 8px 18px rgb(38 40 44 / 8%); }
.ss-callback-dialog .ss-callback-consent { max-width: 92%; margin: 14px auto 0; font-size: 13px; line-height: 1.35; color: #7b7f84; text-align: center; }
.ss-callback-consent a { color: #52565b; text-decoration: underline; }
@media (max-width: 768px) {
    .ss-callback-dialog { width: calc(100vw - 44px); }
    .ss-callback-content { padding: 34px 18px 24px; }
    .ss-callback-dialog .ss-callback-close { width: 38px; height: 38px; border-width: 2px; font-size: 28px; }
    .ss-callback-dialog #ss-callback-subtitle { max-width: 100%; }
    .ss-callback-dialog input[type="text"], .ss-callback-dialog input[type="tel"] { height: 48px; }
    .ss-callback-dialog input.ss-callback-submit { height: 52px; font-size: 17px; }
    .ss-callback-messengers-text { font-size: 13px; }
}
