/* The existing Elementor identity remains; forms adapt to the available space. */
.elementor-form, .contact-form { min-width: 0; }
.elementor-widget-form { container-type: inline-size; }
.page-id-21 iframe { max-width: 100% !important; }
.page-id-21 .elementor-heading-title { overflow-wrap: break-word; }
.elementor-form input:not([type="hidden"]), .elementor-form select, .elementor-form textarea,
.contact-form input:not([type="hidden"]), .contact-form select, .contact-form textarea {
  font-size: 16px !important; max-width: 100%; box-sizing: border-box; min-height: 46px;
}
.elementor-form .elementor-field-group, .contact-form .form-group { min-width: 0; }
.elementor-form .elementor-button, .contact-form button[type="submit"] { min-height: 46px; white-space: normal; }
.elementor-form :is(input,select,textarea,button):focus-visible, .contact-form :is(input,select,textarea,button):focus-visible,
.elementor-popup-modal.archifx-lead-dialog .dialog-close-button:focus-visible { outline: 3px solid #0e43ff; outline-offset: 3px; }
.elementor-popup-modal.archifx-lead-dialog .dialog-widget-content {
  width: 620px !important;
  max-width: calc(100vw - 32px) !important; max-height: calc(100vh - 32px) !important;
  max-height: calc(100dvh - 32px) !important; margin: auto !important;
}
.elementor-popup-modal.archifx-lead-dialog .dialog-message {
  width: 100% !important; height: auto !important; min-height: 0 !important;
  max-height: calc(100vh - 32px) !important; max-height: calc(100dvh - 32px) !important;
  overflow-y: auto !important; overscroll-behavior: contain; -webkit-overflow-scrolling: touch;
}
.elementor-popup-modal.archifx-lead-dialog .dialog-close-button {
  top: max(6px, env(safe-area-inset-top)) !important; right: max(6px,env(safe-area-inset-right)) !important;
  width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; z-index: 5;
  color: #222 !important; background: #fff; border-radius: 50%;
}
.elementor-popup-modal.archifx-lead-dialog .dialog-message > .elementor { padding-top: 38px; }
.elementor-popup-modal.archifx-lead-dialog .elementor-form .elementor-field-label { line-height: 1.45; }
.elementor-form .elementor-message { line-height: 1.5; overflow-wrap: anywhere; }
@media (max-width: 767px) {
  .elementor-form .elementor-field-group:not(.e-form__buttons__wrapper) { width: 100%; }
  .elementor-popup-modal.archifx-lead-dialog .dialog-widget-content { width: 100% !important; max-width: 100% !important; border-radius: 0 !important; }
  .elementor-popup-modal.archifx-lead-dialog .dialog-widget-content, .elementor-popup-modal.archifx-lead-dialog .dialog-message { max-height: 100vh !important; max-height: 100dvh !important; }
  .elementor-popup-modal.archifx-lead-dialog .dialog-message { padding-bottom: max(18px,env(safe-area-inset-bottom)); }
  .elementor-popup-modal.archifx-lead-dialog .dialog-message .e-con { --container-default-padding-top: 12px; --container-default-padding-right: 18px; --container-default-padding-bottom: 12px; --container-default-padding-left: 18px; }
  .elementor-popup-modal.archifx-lead-dialog .e-form__indicators { gap: 8px; }
  .elementor-popup-modal.archifx-lead-dialog .e-form__indicators__indicator__label { font-size: 12px; }
}
@container (max-width: 440px) {
  .elementor-form .elementor-field-group:not(.e-form__buttons__wrapper) { width: 100% !important; }
}
@media (max-width: 1024px) {
  .elementor-section:has(> .elementor-container > .elementor-column .elementor-form) > .elementor-container { flex-wrap: wrap; }
  .elementor-section:has(> .elementor-container > .elementor-column .elementor-form) > .elementor-container > .elementor-column { width: 100% !important; }
}
@media (prefers-reduced-motion: reduce) {
  .elementor-popup-modal.archifx-lead-dialog, .elementor-popup-modal.archifx-lead-dialog .dialog-widget-content { animation: none !important; transition: none !important; }
}
