/* v29: isolated styling for the first-screen popup with native Bitrix24 form 63.
   Existing fonts are reused, no @font-face, downloads or global form resets. */
body.tp29-b24-is-open { overflow: hidden !important; }
#modal-1.tp29-b24-popup {
  --tp29-blue: #006eff;
  --tp29-ink: #222;
  --tp29-surface: #f4f4f4;
  --tp29-muted: #636970;
  display: none !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 100500 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 24px !important;
  overflow: auto !important;
  overscroll-behavior: contain;
  background: rgba(0, 0, 0, .72) !important;
  text-align: left !important;
  color: var(--tp29-ink);
  font-family: "Noto Sans", "Golos Text", Arial, sans-serif;
  -webkit-overflow-scrolling: touch;
}
#modal-1.tp29-b24-popup.show { display: flex !important; align-items: flex-start; justify-content: center; }
#modal-1.tp29-b24-popup[hidden], #modal-1.tp29-b24-popup [hidden] { display: none !important; }
#modal-1.tp29-b24-popup *, #modal-1.tp29-b24-popup *::before, #modal-1.tp29-b24-popup *::after { box-sizing: border-box; }
#modal-1 .tp29-b24-dialog {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 640px !important;
  margin: auto !important;
  padding: 0 !important;
  flex: 0 1 640px;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--tp29-surface) !important;
  box-shadow: none !important;
  transform: none !important;
}
#modal-1 .tp29-b24-header { position: static !important; margin: 0 !important; padding: 27px 70px 18px 32px !important; background: transparent !important; border: 0 !important; width: 100% !important; height: auto !important; }
#modal-1 #tp29-b24-title, #modal-1 .tp29-b24-host .b24-form-header-title {
  margin: 0 !important;
  padding: 0 !important;
  color: var(--tp29-ink) !important;
  font-family: "Unbounded", "Golos Text", Arial, sans-serif !important;
  font-size: clamp(26px, 3vw, 38px) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: -.035em !important;
  text-transform: none !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  white-space: normal !important;
}
#modal-1 button.tp29-b24-close {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: absolute !important;
  z-index: 5;
  top: 8px !important;
  right: 8px !important;
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #dedede !important;
  color: #fff !important;
  box-shadow: none !important;
  opacity: 1 !important;
  cursor: pointer;
}
#modal-1 button.tp29-b24-close:hover { background: #babec2 !important; }
#modal-1 button.tp29-b24-close svg { display: block; width: 24px; height: 24px; margin: 0; flex: none; }
#modal-1 .tp29-b24-body { width: 100%; min-width: 0; margin: 0; padding: 8px 32px 24px; border: 0; background: transparent; }
#modal-1 .tp29-b24-header[hidden] + .tp29-b24-body { padding-top: 30px; }
#modal-1 .tp29-b24-notice { padding: 24px 0; color: var(--tp29-muted); text-align: center; line-height: 1.5; }
#modal-1 .tp29-b24-notice p { font: 400 15px/1.5 "Noto Sans", "Golos Text", Arial, sans-serif !important; margin: 12px 0 !important; color: var(--tp29-muted) !important; }
#modal-1 .tp29-b24-help a { display: block; margin-top: 12px; color: #0055c7; text-decoration: underline; font-size: 14px; }
#modal-1 .tp29-b24-spinner { display: inline-block; width: 26px; height: 26px; border: 3px solid #dce5f3; border-top-color: var(--tp29-blue); border-radius: 50%; animation: tp29-b24-spin .8s linear infinite; }
#modal-1[data-tp29-state="error"] .tp29-b24-spinner { display: none; }
@keyframes tp29-b24-spin { to { transform: rotate(360deg); } }
#modal-1 .tp29-b24-host { width: 100%; max-width: 100%; min-width: 0; }
/* Keep rules scoped to this instance: never recolor widgets or another CRM form. */
#modal-1 .tp29-b24-host .b24-form,
#modal-1 .tp29-b24-host .b24-form-wrapper,
#modal-1 .tp29-b24-host .b24-form-content {
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-family: "Noto Sans", "Golos Text", Arial, sans-serif !important;
  text-align: left !important;
}
#modal-1 .tp29-b24-host form {
  /* Do not override native display/visibility: Bitrix controls success states. */
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  background: transparent !important;
}
#modal-1 .tp29-b24-host .b24-form-header {
  padding: 0 34px 18px 0 !important;
  margin: 0 0 18px !important;
  border: 0 !important;
  border-bottom: 1px solid #e1e3e6 !important;
  background: transparent !important;
  text-align: left !important;
}
#modal-1 .tp29-b24-host .b24-form-header-description { margin: 12px 0 0 !important; color: var(--tp29-muted) !important; font: 400 15px/1.5 "Noto Sans", "Golos Text", Arial, sans-serif !important; }
#modal-1 .tp29-b24-host .b24-form-field { min-width: 0; max-width: 100%; margin-bottom: 14px !important; }
#modal-1 .tp29-b24-host .b24-form-control-string .b24-form-control,
#modal-1 .tp29-b24-host .b24-form-control-list .b24-form-control,
#modal-1 .tp29-b24-host .b24-form-control-text .b24-form-control,
#modal-1 .tp29-b24-host .b24-form-control-select .field-item {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 56px !important;
  margin: 0 !important;
  padding: 22px 12px 6px !important;
  border: 0 !important;
  border-bottom: 1px solid #7b8086 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  color: var(--tp29-ink) !important;
  font-family: "Noto Sans", "Golos Text", Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
  text-indent: 0 !important;
}
#modal-1 .tp29-b24-host .b24-form-control-text textarea.b24-form-control {
  min-height: 100px !important;
  height: auto !important;
  padding-top: 24px !important;
  resize: vertical;
}
#modal-1 .tp29-b24-host .b24-form-control-label { color: var(--tp29-muted) !important; font-family: "Noto Sans", "Golos Text", Arial, sans-serif !important; line-height: 1.35 !important; margin-bottom: 0 !important; }
#modal-1 .tp29-b24-host .b24-form-control-comment,
#modal-1 .tp29-b24-host .b24-form-control-desc,
#modal-1 .tp29-b24-host .b24-form-field-agreement,
#modal-1 .tp29-b24-host .b24-form-field-agreement-link {
  color: #575f69 !important;
  font-family: "Noto Sans", "Golos Text", Arial, sans-serif !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  overflow-wrap: anywhere;
}
#modal-1 .tp29-b24-host .b24-form-field-agreement-link { color: #0055c7 !important; text-decoration: underline !important; }
#modal-1 .tp29-b24-host .b24-form-control-file { min-width: 0 !important; max-width: 100% !important; background: transparent !important; }
#modal-1 .tp29-b24-host .b24-form-control-file label { border-color: #b3bbc7 !important; color: var(--tp29-ink) !important; background: #fff !important; border-radius: 6px !important; font-family: "Noto Sans", "Golos Text", Arial, sans-serif !important; font-size: 14px !important; }
#modal-1 .tp29-b24-host .b24-form-btn-container { margin-top: 22px !important; }
#modal-1 .tp29-b24-host button.b24-form-btn,
#modal-1 button.tp29-b24-reload {
  width: 230px !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 50px !important;
  height: auto !important;
  margin: 12px auto 0 !important;
  padding: 13px 22px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--tp29-blue) !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #fff !important;
  font: 600 16px/1.4 "Noto Sans", "Golos Text", Arial, sans-serif !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  white-space: normal !important;
  cursor: pointer;
}
#modal-1 button.tp29-b24-reload { display: block; }
#modal-1 .tp29-b24-host button.b24-form-btn:hover:not(:disabled),
#modal-1 button.tp29-b24-reload:hover { background: #0052bf !important; }
#modal-1 .tp29-b24-host button.b24-form-btn:disabled { opacity: .55 !important; cursor: default; }
/* Keep native previous-page controls secondary without affecting their action. */
#modal-1 .tp29-b24-host button.b24-form-btn.b24-form-btn-border { border: 1px solid #006eff !important; background: transparent !important; color: #0055c7 !important; }
#modal-1 .tp29-b24-host .b24-form-control-alert .b24-form-control { border-bottom-color: #c73737 !important; }
#modal-1 .tp29-b24-host .b24-form-control-alert-message { color: #b92323 !important; font-size: 13px !important; line-height: 1.4 !important; }
#modal-1 button:focus-visible, #modal-1 a:focus-visible, #modal-1 input:focus-visible, #modal-1 textarea:focus-visible, #modal-1 select:focus-visible { outline: 2px solid #006eff !important; outline-offset: 3px; }
/* Native agreements open a separate Bitrix window; keep it above this wrapper. */
body.tp29-b24-is-open .b24-window { z-index: 100610 !important; }
@media (max-width: 600px) {
  #modal-1.tp29-b24-popup { padding: 12px !important; }
  #modal-1 .tp29-b24-header { padding: 23px 62px 14px 20px !important; }
  #modal-1 .tp29-b24-body { padding: 6px 20px 22px; }
  #modal-1 .tp29-b24-header[hidden] + .tp29-b24-body { padding-top: 26px; }
  #modal-1 #tp29-b24-title, #modal-1 .tp29-b24-host .b24-form-header-title { font-size: clamp(24px, 5.5vw, 30px) !important; line-height: 1.18 !important; }
  #modal-1 .tp29-b24-host .b24-form-header { padding-right: 34px !important; }
  #modal-1 button.tp29-b24-close { width: 44px !important; height: 44px !important; min-width: 44px !important; top: 6px !important; right: 6px !important; }
}
@media (prefers-reduced-motion: reduce) { #modal-1 .tp29-b24-spinner { animation: none; } }
