/* ==========================================================
   МЗ «Синергия» — новое окно заявки (для всего сайта)
   Классы cbm-* добавляет callback-modal.js; без скрипта
   форма остаётся в прежнем виде.
   ========================================================== */
.js-callback-modal .cbm-dialog{width:920px;max-width:calc(100% - 24px);margin:40px auto}
.js-callback-modal .cbm{display:flex;flex-wrap:wrap;padding:0;border:0;border-radius:18px;overflow:hidden;background:#FFFFFF;box-shadow:0 30px 80px rgba(0,0,0,.35);font-family:"Roboto Condensed",sans-serif;color:#3A3A3A;text-align:left}
.modal-backdrop.in{opacity:.62}

/* левая колонка */
.cbm-aside{flex:1 1 300px;min-width:0;background:#222222;color:#FFFFFF;padding:36px 32px;display:flex;flex-direction:column;gap:20px;position:relative;overflow:hidden}
.cbm-aside__ring{position:absolute;right:-60px;bottom:-60px;width:220px;height:220px;border-radius:50%;border:34px solid rgba(219,30,30,.22);pointer-events:none}
.cbm-aside__kicker{font-size:12px;line-height:1.4;text-transform:uppercase;letter-spacing:.14em;color:#FF8A8A}
.cbm-aside__title{font-size:28px;line-height:1.15;font-weight:500;text-transform:uppercase;letter-spacing:.02em;color:#FFFFFF}
.cbm-aside__sub{font-size:15px;line-height:1.55;color:#C8C8C8}
.cbm-aside__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px;font-size:15px;line-height:1.4;color:#E6E6E6;position:relative}
.cbm-aside__list li{display:flex;gap:12px;align-items:flex-start;margin:0;padding:0}
.cbm-aside__list li:before{content:none}
.cbm-aside__list svg{flex:none;margin-top:1px}
.cbm-aside__contacts{margin-top:auto;padding-top:18px;border-top:1px solid #3A3A3A;display:flex;flex-direction:column;gap:4px;position:relative}
.cbm-aside__contacts span{font-size:12px;color:#9A9A9A;text-transform:uppercase;letter-spacing:.1em}
.cbm-aside__contacts a{color:#FFFFFF;font-size:22px;text-decoration:none}
.cbm-aside__contacts a+a{color:#C8C8C8;font-size:15px;text-decoration:underline}
.cbm-aside__contacts a:hover{color:#FFFFFF}

/* правая колонка — форма сайта */
.cbm-main{flex:999 1 420px;min-width:0;padding:32px 36px 28px;position:relative}
.cbm-main .callback-modal__header{padding:0 48px 0 0;border:0;margin:0 0 16px;min-height:0}
.cbm-main .callback-modal__title{font-size:20px;font-weight:500;color:#1A1A1A;text-transform:none;letter-spacing:0;text-align:left;margin:0;line-height:1.3}
.cbm-main .callback-modal__header .close{position:absolute;top:18px;right:18px;width:40px;height:40px;border-radius:50%;background:#F4F4F4;opacity:1;font-size:26px;line-height:38px;color:#1A1A1A;text-shadow:none;margin:0;padding:0;z-index:2}
.cbm-main .callback-modal__header .close:hover{background:#EBEBEB}
.cbm-main .callback-modal__body{padding:0;display:flex;flex-direction:column;gap:14px}
.cbm-main .form-group{margin:0}
.cbm-main .form-label{display:block;font-size:14px;color:#3A3A3A;margin:0 0 6px;font-weight:400;text-transform:none;letter-spacing:0}
.cbm-req{color:#DB1E1E}
.cbm-main .form-control{display:block;width:100%;height:46px;padding:10px 14px;border:1px solid #DADADA;border-radius:10px;background:#FFFFFF;font-size:16px;color:#1A1A1A;box-shadow:none;font-family:inherit;transition:border-color .2s,box-shadow .2s}
.cbm-main textarea.form-control{height:auto;min-height:90px;resize:vertical}
.cbm-main .form-control:focus{border-color:#DB1E1E;box-shadow:0 0 0 3px rgba(219,30,30,.12);outline:0}
.cbm-main .form-control.error,.cbm-main .form-control[aria-invalid="true"]{border-color:#DB1E1E}
.cbm-main .errorTxt{font-size:13px;color:#DB1E1E;min-height:0}
.cbm-main .errorTxt:empty{display:none}
.cbm-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cbm-col{display:flex;flex-direction:column;gap:4px;min-width:0}
.cbm-main .helper-text,.cbm-main .callback-modal__body>br{display:none}

/* зона для чертежа */
.cbm-drop{position:relative;display:flex;align-items:center;gap:14px;border:1.5px dashed #C9C9C9;border-radius:10px;padding:14px 18px;cursor:pointer;background:#FAFAFA;margin:0;font-weight:400;transition:border-color .2s,background .2s}
.cbm-drop:hover,.cbm-drop.is-over{border-color:#DB1E1E;background:#FFF7F7}
.cbm-drop.is-filled{border-style:solid;border-color:#DB1E1E;background:#FFF7F7}
.cbm-drop__ic{width:42px;height:42px;border-radius:50%;background:#FDECEC;display:flex;align-items:center;justify-content:center;flex:none}
.cbm-drop__txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.cbm-drop__t{font-size:15px;color:#1A1A1A;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cbm-drop__d{font-size:13px;color:#7A7A7A}
.cbm-drop input[type="file"]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.cbm-file .help-block{margin:4px 0 0;font-size:13px}
.cbm-file .help-block:empty{display:none}

/* согласие и кнопка */
.cbm-main .sorl{font-size:12px;line-height:1.45;color:#7A7A7A;gap:10px;align-items:flex-start;margin:2px 0 0}
.cbm-main .sorl a{color:#7A7A7A}
.cbm-main .callback-modal__footer{padding:16px 0 0;border:0;margin:0;text-align:left}
.cbm-main .btn__subm_row{display:block;width:100%}
.cbm-main .cbm-submit{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;font-size:17px;border-radius:30px;margin:0}

/* экран «Заявка отправлена» */
.cbm--done{display:block}
.cbm-done{position:relative;min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;padding:48px 28px}
.cbm-done__ic{width:76px;height:76px;border-radius:50%;background:#FDECEC;display:flex;align-items:center;justify-content:center}
.cbm-done__t{font-size:26px;font-weight:500;text-transform:uppercase;letter-spacing:.02em;color:#1A1A1A}
.cbm-done__d{font-size:16px;line-height:1.55;max-width:400px}
.cbm-done__d a{color:#DB1E1E;white-space:nowrap}
.cbm-back{margin-top:8px;min-height:46px;padding:0 28px;border:1px solid #BDBDBD;border-radius:30px;background:#FFFFFF;font-size:16px;color:#1A1A1A;cursor:pointer;font-family:inherit}
.cbm-back:hover{border-color:#1A1A1A}
.cbm-x{position:absolute;top:18px;right:18px;width:40px;height:40px;border:0;border-radius:50%;background:#F4F4F4;font-size:26px;line-height:38px;color:#1A1A1A;cursor:pointer;padding:0}
.js-callback-modal .cbm--done{max-width:560px;margin:0 auto}

/* телефон */
@media (max-width:640px){
  .js-callback-modal .cbm-dialog{margin:12px auto}
  .cbm-aside{padding:24px 20px;gap:12px}
  .cbm-aside__title{font-size:22px}
  .cbm-aside__sub,.cbm-aside__list,.cbm-aside__ring{display:none}
  .cbm-aside__contacts{padding-top:12px;margin-top:4px}
  .cbm-aside__contacts a{font-size:19px}
  .cbm-main{padding:22px 18px 20px}
  .cbm-row{grid-template-columns:1fr}
}
.cbm-main label.error,.cbm-main .errorTxt label{display:block;margin:4px 0 0;font-size:13px;font-weight:400;color:#DB1E1E;text-transform:none;letter-spacing:0}
.cbm-main .form-control.error{border-color:#DB1E1E}
