/* CR Consult Form: replace the previous stylesheet, do not append.
   Field specificity intentionally exceeds Elementor global kit styles.
   Two equal columns above 600px; one column on mobile. */
.cr-cf {
  --cr-cf-blue-bg: #283f74;
  --cr-cf-blue-accent: #283f74;
  --cr-cf-white-bg: #fff;
  --cr-cf-font: 'IRANYekanFaNum', Tahoma, sans-serif;
  --cr-cf-header-gap: 24px;
  --cr-cf-field-gap: 24px;
  --cr-cf-radius-box: 20px;
  --cr-cf-control-height: 46px;
  --cr-cf-ink: #283f74;
  --cr-cf-muted: rgba(40,63,116,.5);
/*   --cr-cf-label: #283f74; */
  --cr-cf-help: rgba(40,63,116,.8);
  --cr-cf-surface: var(--cr-cf-white-bg);
  box-sizing: border-box;
  direction: rtl;
  font-family: var(--cr-cf-font);
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin: 0 auto;
}
.cr-cf--blue {
  --cr-cf-surface: var(--cr-cf-blue-bg);
  --cr-cf-label: #fff;
  --cr-cf-help: rgba(255,255,255,.8);
}
.cr-cf *, .cr-cf *::before, .cr-cf *::after { box-sizing: border-box; }
.cr-cf [hidden], .cr-cf template, .cr-cf-popup[hidden] { display: none !important; }
.cr-cf__inner {
  padding: 32px;
  border-radius: var(--cr-cf-radius-box);
  background: var(--cr-cf-surface);
  color: var(--cr-cf-label);
  box-shadow: 4px 4px 4.35px rgba(40,63,116,.1);
}
.cr-cf__header { display: flex; flex-direction: column; gap: 12px; text-align: center; margin-bottom: var(--cr-cf-header-gap); }
.cr-cf .cr-cf__title { margin: 0; color: var(--cr-cf-label); font: 600 22px/1.5 var(--cr-cf-font); }
.cr-cf .cr-cf__subtitle { margin: 0; color: var(--cr-cf-help); font: 400 14px/1.8 var(--cr-cf-font); }
.cr-cf__form { display: flex; flex-direction: column; gap: var(--cr-cf-field-gap); margin: 0; }
.cr-cf .cr-cf__row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; gap: 24px 12px; width: 100%; }
.cr-cf__field { position: relative; min-width: 0; width: 100%; margin: 0; }
.cr-cf .cr-cf__label { display: block; margin: 0 0 12px; color: var(--cr-cf-label); font: 600 16px/28px var(--cr-cf-font); text-align: right; }
.cr-cf .cr-cf__control { position: relative; display: block; width: 100%; min-width: 0; }
.cr-cf .cr-cf__form .cr-cf__control input.cr-cf__input,
.cr-cf .cr-cf__form .cr-cf__control select.cr-cf__select,
.cr-cf .cr-cf__form .cr-cf__control button.cr-cf__select-trigger {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  display: block;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  height: var(--cr-cf-control-height);
  min-height: var(--cr-cf-control-height);
  margin: 0;
  padding: 10px 40px 10px 12px;
  border: 1px solid rgba(40,63,116,.5);
  border-radius: 16px;
  background: #fff;
  color: var(--cr-cf-ink);
  box-shadow: none;
  font: 500 14px/24px var(--cr-cf-font);
  text-align: right;
  text-transform: none;
  letter-spacing: normal;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.cr-cf .cr-cf__form .cr-cf__control input.cr-cf__input[type="tel"] { direction: ltr; text-align: left; padding-left: 12px; padding-right: 40px; }
.cr-cf .cr-cf__form .cr-cf__control input.cr-cf__input::placeholder { color: var(--cr-cf-muted); opacity: 1; font: inherit; }
.cr-cf .cr-cf__form .cr-cf__control select.cr-cf__select { color: var(--cr-cf-muted); }
.cr-cf .cr-cf__form .cr-cf__control select.cr-cf__select.has-value,
.cr-cf .cr-cf__form .cr-cf__control select.cr-cf__select:has(option:checked:not([value=""])) { color: var(--cr-cf-ink); }
.cr-cf .cr-cf__form .cr-cf__control select.cr-cf__select, .cr-cf .cr-cf__form .cr-cf__control button.cr-cf__select-trigger { padding-left: 40px; cursor: pointer; }
.cr-cf .cr-cf__form .cr-cf__control input.cr-cf__input:focus,
.cr-cf .cr-cf__form .cr-cf__control select.cr-cf__select:focus,
.cr-cf .cr-cf__form .cr-cf__control button.cr-cf__select-trigger:focus-visible {
  outline: 2px solid rgba(158,226,255,.8);
  outline-offset: 2px;
  border-color: var(--cr-cf-ink);
}
.cr-cf .cr-cf__form .cr-cf__control input.cr-cf__input[aria-invalid="true"],
.cr-cf .cr-cf__form .cr-cf__control button.cr-cf__select-trigger[aria-invalid="true"] { border-color: #b42318; }
.cr-cf .cr-cf__form .cr-cf__control input.cr-cf__input:disabled, .cr-cf .cr-cf__form .cr-cf__control select.cr-cf__select:disabled,
.cr-cf .cr-cf__form .cr-cf__control button.cr-cf__select-trigger:disabled { cursor: default; opacity: .65; }
/* Anchor icons to the control itself, not its expandable option list. */
.cr-cf .cr-cf__form .cr-cf__control > .cr-cf__field-icon,
.cr-cf .cr-cf__form .cr-cf__control > .cr-cf__select-arrow {
  position: absolute;
  inset: auto;
  top: calc(var(--cr-cf-control-height) / 2);
  transform: translateY(-50%);
  width: 20px; height: 20px; min-width: 20px; max-width: 20px;
  margin: 0; padding: 0; display: flex; align-items: center;
  justify-content: center; z-index: 1; pointer-events: none;
}
.cr-cf .cr-cf__form .cr-cf__control > .cr-cf__field-icon { right: 12px; left: auto; }
.cr-cf .cr-cf__form .cr-cf__control > .cr-cf__select-arrow { left: 12px; right: auto; }
.cr-cf .cr-cf__field-icon img, .cr-cf .cr-cf__select-arrow img, .cr-cf__submit-icon img {
  display: block; width: 20px; height: 20px; max-width: none; flex: 0 0 20px;
  margin: 0; padding: 0; border: 0; border-radius: 0;
}
.cr-cf .cr-cf__select-arrow img { transition: transform .2s ease; }
.cr-cf .cr-cf__select-control.is-open .cr-cf__select-arrow img { transform: rotate(180deg); }
/* Only hide the native select after the custom control was successfully built. */
.cr-cf .cr-cf__form .cr-cf__select-control.is-enhanced > select.cr-cf__select {
  position: absolute !important; width: 1px; height: 1px; min-height: 0;
  padding: 0; border: 0; margin: -1px; clip-path: inset(50%); overflow: hidden;
}
.cr-cf .cr-cf__form .cr-cf__control button.cr-cf__select-trigger { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.cr-cf .cr-cf__form .cr-cf__control button.cr-cf__select-trigger:not(.has-value) { color: var(--cr-cf-muted); }
.cr-cf .cr-cf__options {
  position: absolute; inset: 100% 0 auto; margin: 8px 0 0;
  width: 100%; max-width: none; max-height: 418px;
  padding: 16px; border: 1px solid rgba(40,63,116,.5); border-radius: 16px;
  background: #fff; color: #283f74; box-shadow: 0 8px 24px rgba(40,63,116,.1);
  overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain;
  direction: rtl; text-align: right; z-index: 20;
  font: 500 14px/24px var(--cr-cf-font);
}
.cr-cf .cr-cf__options:not([popover]) { position: relative; inset: auto; }
.cr-cf .cr-cf__options[popover] { position: fixed; inset: auto; margin: 0; }
.cr-cf .cr-cf__options::backdrop { background: transparent; pointer-events: none; }
.cr-cf .cr-cf__option { padding: 12px; min-height: 48px; border-radius: 10px; cursor: pointer; }
.cr-cf .cr-cf__option:is(:hover,.is-active,[aria-selected="true"]) { background: #e9f2f6; }
.cr-cf .cr-cf__option[aria-disabled="true"] { opacity: .45; cursor: default; }
.cr-cf .cr-cf__hint { margin: 0; color: var(--cr-cf-help); text-align: center; font: 500 14px/24px var(--cr-cf-font); }
.cr-cf__footer { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 20px; color: var(--cr-cf-help); font-size: 12px; line-height: 1.8; }
.cr-cf__footer:empty { display: none; }
.cr-cf__footer-item { display: inline-flex; align-items: center; gap: 6px; }
.cr-cf__icon { flex-shrink: 0; }
.cr-cf .cr-cf__submit {
  position: relative; isolation: isolate;
  align-self: flex-end; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  width: auto; max-width: 100%; min-height: 48px; height: auto;
  margin: 8px 0 0; padding: 8px 16px 8px 8px;
  border: 0; border-radius: 500px; appearance: none;
  background: var(--cr-cf-blue-accent); color: #fff;
  font: 500 16px/24px var(--cr-cf-font); text-align: center; text-transform: none;
  cursor: pointer; overflow: visible;
  box-shadow: 0 3px 3.7px rgba(40,63,116,.2);
  transition: transform .2s ease;
}
.cr-cf--blue .cr-cf__submit { background: #fff; color: var(--cr-cf-blue-accent); }
.cr-cf__submit-text, .cr-cf__submit-loading, .cr-cf__submit-icon { position: relative; z-index: 2; }
.cr-cf__submit-text, .cr-cf__submit-loading { display: inline; }
.cr-cf__submit-icon { display: flex; justify-content: center; align-items: center; width: 32px; height: 32px; flex: 0 0 32px; padding: 6px; border-radius: 50%; background: #fff; }
.cr-cf--blue .cr-cf__submit-icon { background: #e9f2f6; }
.cr-cf .cr-cf__submit:focus-visible { outline: 2px solid rgb(var(--abs-ui-shine-rgb,158,226,255)); outline-offset: 4px; }
.cr-cf .cr-cf__submit:hover:not(:disabled) { transform: none; }
.cr-cf .cr-cf__submit:active:not(:disabled) { transform: none; }
.cr-cf .cr-cf__submit:disabled { opacity: .7; cursor: wait; }
.cr-cf--preview .cr-cf__submit:disabled { cursor: default; }
.cr-cf .cr-cf__submit:disabled::before, .cr-cf .cr-cf__submit:disabled::after { animation-play-state: paused; }
.cr-cf__message { padding: 12px 16px; border-radius: 16px; text-align: center; font-size: 14px; line-height: 1.6; }
.cr-cf__message--error { background: #fff0f0; color: #b42318; }
.cr-cf__message--success { background: #ecfdf3; color: #027a48; }
.cr-cf--blue .cr-cf__message--error { background: rgba(255,80,80,.15); color: #ffd6d6; }
.cr-cf--blue .cr-cf__message--success { background: rgba(80,220,140,.15); color: #d6ffe8; }
.cr-cf__captcha { display: flex; justify-content: center; width: 100%; max-width: 100%; }
.cr-cf__captcha .g-recaptcha, .cr-cf__captcha .cf-turnstile { transform-origin: center; }
.cr-cf__hp, .cr-cf .screen-reader-text {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;
}
/* Existing popup API/classes retained; long forms and fallback menus can scroll. */
.cr-cf-popup { position: fixed; inset: 0; z-index: 999999; display: none; align-items: center; justify-content: center; padding: 12px; overflow: hidden; overscroll-behavior: none; }
.cr-cf-popup.is-open { display: flex !important; }
.cr-cf-popup__overlay { position: absolute; inset: 0; background: rgba(10,20,40,calc(var(--cr-cf-popup-overlay,70) / 100)); backdrop-filter: blur(2px); }
.cr-cf-popup__dialog { position: relative; z-index: 1; width: min(100%,560px); max-width: 100%; max-height: 90vh; max-height: 90dvh; overflow-x: hidden; overflow-y: auto; border-radius: 20px; box-sizing: border-box; animation: crCfPopIn .22s ease; }
.cr-cf-popup__body { width: 100%; max-width: 100%; box-sizing: border-box; }
.cr-cf-popup__body .cr-cf { max-width: 100%; }
.cr-cf-popup__close { position: absolute; top: 10px; left: 12px; z-index: 3; display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; min-width: 36px; min-height: 36px; padding: 0; border: 0; border-radius: 50%; background: rgba(0,0,0,.12); color: #283f74; font-size: 22px; line-height: 36px; cursor: pointer; }
.cr-cf-popup__dialog:has(.cr-cf--blue) .cr-cf-popup__close { color: #fff; background: rgba(255,255,255,.16); }
body.cr-cf-popup-open { overflow: hidden !important; }
@keyframes crCfPopIn { from { opacity: 0; transform: translateY(12px) scale(.98); } to { opacity: 1; transform: none; } }
@media (max-width: 600px) {
  .cr-cf__inner { padding: 28px 18px 22px; }
  .cr-cf__header { display: none; }
  .cr-cf .cr-cf__title { font-size: 19px; }
  .cr-cf .cr-cf__label { font-size: 14px; }
  .cr-cf .cr-cf__row { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .cr-cf .cr-cf__form .cr-cf__control input.cr-cf__input,
  .cr-cf .cr-cf__form .cr-cf__control select.cr-cf__select,
  .cr-cf .cr-cf__form .cr-cf__control button.cr-cf__select-trigger { font-size: 16px; }
  .cr-cf__footer { flex-direction: column; align-items: center; }
  .cr-cf-popup { padding: 10px; align-items: flex-end; }
  .cr-cf-popup__dialog { width: 100%; max-height: 85vh; max-height: 85dvh; }
  .cr-cf .cr-cf__submit { width:100%!important;}
}
@media (prefers-reduced-motion: reduce) {
  .cr-cf .cr-cf__form .cr-cf__control input.cr-cf__input, .cr-cf .cr-cf__form .cr-cf__control button.cr-cf__select-trigger, .cr-cf .cr-cf__submit, .cr-cf .cr-cf__select-arrow img { transition: none; }
  .cr-cf-popup__dialog { animation: none; }
}
.cr-cf .cr-cf__label {
	color:#283F74;
}
/* The legacy photo treatment belongs only to the built-in form. */
.cr-cf-popup:not(.cr-cf-popup--template) .cr-cf-popup__overlay {
  background: rgba(40, 63, 116, 0.9);
  -webkit-backdrop-filter: blur(15px);
  backdrop-filter: blur(15px);
}
.cr-cf-popup:not(.cr-cf-popup--template) .cr-cf-popup__overlay::before {
  content: ""; position: absolute; inset: 0;
  background: url("https://absokoun.com/demo/wp-content/uploads/2026/10/8503c5a92df08fbe3b63a37d737bbd7ce35e6d50.avif") center / cover no-repeat;
  opacity: .15; pointer-events: none;
}
.cr-cf-popup__close:hover {
    background-color: #283f74!important;
}
.cr-cf-popup__close {
    background-color: #283f74!important;
}
.cr-cf-popup__body.wp-dark-mode-transparent  .cr-cf--white .cr-cf__inner {
    background-color: #fff!important;
}
/* Elementor owns the content layout; the shell only constrains the viewport. */
.cr-cf-popup--template .cr-cf-popup__dialog {
  width: min(100%, var(--cr-cf-popup-width, 960px));
}
.cr-cf-popup--template .cr-cf-popup__body { min-width: 0; }

/* Explicit stacking: decorative overlay always stays below template content. */
#cr-cf-popup { isolation: isolate; z-index: 2147483000; }
#cr-cf-popup > .cr-cf-popup__overlay { z-index: 0; }
#cr-cf-popup > .cr-cf-popup__dialog { z-index: 1; }
#cr-cf-popup.cr-cf-popup--template > .cr-cf-popup__overlay::before,
#cr-cf-popup.cr-cf-popup--template > .cr-cf-popup__overlay::after {
  content: none !important;
}
#cr-cf-popup.cr-cf-popup--template > .cr-cf-popup__dialog { background: transparent; }
#cr-cf-popup .cr-cf-popup__close { color: #fff; }

/* Native Elementor Pro popup containing this form must also clear page effects. */
.elementor-popup-modal:has(.cr-cf) { z-index: 2147483000; }
