/* OnTime Elementor Form Enhancer 1.2.0 */
:root{--otfe-error:#b42318;--otfe-surface:#fff;--otfe-text:#111827;--otfe-muted:#6b7280;--otfe-border:#d6dbe3;--otfe-focus:#2563eb;--otfe-active:#f2f5f9;--otfe-shadow:0 12px 30px rgba(17,24,39,.14)}
.elementor-field-type-otfe-phone .iti{width:100%;max-width:100%;font-family:inherit;color:inherit;--otfe-phone-chip-bg:transparent;--otfe-phone-chip-text:inherit;--otfe-phone-chip-border:rgba(17,24,39,.12);--otfe-phone-dropdown-bg:#fff;--otfe-phone-dropdown-text:#111827;--otfe-phone-dropdown-border:#d6dbe3;--otfe-phone-dropdown-hover-bg:#f2f5f9;--otfe-phone-search-bg:#fff;--otfe-phone-search-text:#111827;--otfe-phone-search-border:#d6dbe3;--otfe-phone-radius:12px}
.elementor-field-type-otfe-phone .iti input{width:100%!important;max-width:100%!important;font-family:inherit!important;color:inherit!important;background:inherit;border:inherit;border-radius:inherit;box-shadow:inherit}
.elementor-field-type-otfe-phone .iti__selected-country,.elementor-field-type-otfe-phone .iti__selected-country-primary{font-family:inherit!important;background:var(--otfe-phone-chip-bg)!important;color:var(--otfe-phone-chip-text)!important;border-inline-end:1px solid var(--otfe-phone-chip-border)!important}
.elementor-field-type-otfe-phone .iti__selected-country-primary{border-radius:inherit 0 0 inherit!important}
.iti__dropdown-content{z-index:2147483000!important;font-family:inherit!important;box-sizing:border-box!important;background:var(--otfe-phone-dropdown-bg,#fff)!important;color:var(--otfe-phone-dropdown-text,#111827)!important;border:1px solid var(--otfe-phone-dropdown-border,#d6dbe3)!important;border-radius:var(--otfe-phone-radius,12px)!important;box-shadow:var(--otfe-shadow)!important;overflow:hidden!important;min-width:260px}
.iti__country-list{z-index:2147483000!important;font-family:inherit!important;background:var(--otfe-phone-dropdown-bg,#fff)!important;color:var(--otfe-phone-dropdown-text,#111827)!important;padding:4px 0!important;margin:0!important;max-height:260px!important;scrollbar-width:thin}
.iti__search-input{display:block!important;width:calc(100% - 20px)!important;min-width:0!important;box-sizing:border-box!important;margin:10px!important;padding:11px 12px 11px 38px!important;border:1px solid var(--otfe-phone-search-border,#d6dbe3)!important;border-radius:10px!important;outline:none!important;box-shadow:none!important;background:var(--otfe-phone-search-bg,#fff)!important;color:var(--otfe-phone-search-text,#111827)!important;font:inherit!important;line-height:1.35!important}
.iti__search-input:focus{border-color:var(--otfe-focus)!important;box-shadow:0 0 0 3px rgba(37,99,235,.10)!important}
.iti__search-input::placeholder{color:#8a94a3!important;opacity:1!important}
.iti__search-icon{left:21px!important;top:50%!important;transform:translateY(-50%)!important;color:#6b7280!important;pointer-events:none!important}
.iti__country{box-sizing:border-box!important;display:flex!important;align-items:center!important;gap:8px!important;min-height:42px!important;margin:0 6px!important;padding:9px 10px!important;border:0!important;border-radius:8px!important;background:transparent!important;color:var(--otfe-phone-dropdown-text,#111827)!important;font:inherit!important;line-height:1.25!important;cursor:pointer!important}
.iti__country:hover,.iti__country.iti__highlight{background:var(--otfe-phone-dropdown-hover-bg,#f2f5f9)!important}.iti__dial-code{color:#596273!important}
.otfe-inline-error{display:none;width:100%;margin-top:6px;font-size:12px;line-height:1.35;color:var(--otfe-error)}.otfe-has-error .otfe-inline-error{display:block}.otfe-has-error .elementor-field,.otfe-has-error .iti input{outline:1px solid var(--otfe-error);outline-offset:-1px}
.otfe-select--enhanced{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip:rect(0 0 0 0)!important}
.otfe-combobox{position:relative;width:100%;max-width:100%;font-family:inherit;--otfe-select-panel-bg:#fff;--otfe-select-panel-text:#111827;--otfe-select-panel-border:#d6dbe3;--otfe-select-panel-hover-bg:#f2f5f9;--otfe-select-search-bg:#fff;--otfe-select-search-text:#111827;--otfe-select-search-border:#d6dbe3;--otfe-select-radius:12px}
.otfe-combobox__input{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;padding-right:42px!important;font-family:inherit!important;cursor:text!important}
.otfe-combobox__arrow{position:absolute!important;right:14px!important;top:50%!important;transform:translateY(-52%)!important;display:flex!important;align-items:center!important;justify-content:center!important;width:20px!important;height:20px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:inherit!important;font-size:16px!important;line-height:1!important;opacity:.62!important;pointer-events:auto!important;cursor:pointer!important;transition:transform .18s ease!important}.otfe-combobox.is-open .otfe-combobox__arrow{transform:translateY(-48%) rotate(180deg)!important}
.otfe-combobox-panel{position:fixed!important;z-index:2147483000!important;overflow:auto!important;box-sizing:border-box!important;background:var(--otfe-select-panel-bg,#fff)!important;color:var(--otfe-select-panel-text,#111827)!important;border:1px solid var(--otfe-select-panel-border,#d6dbe3)!important;border-radius:var(--otfe-select-radius,12px)!important;box-shadow:var(--otfe-shadow)!important;padding:6px!important;font-family:inherit!important;overscroll-behavior:contain!important;scrollbar-width:thin}.otfe-combobox-panel[hidden]{display:none!important}
.otfe-combobox-panel .otfe-combobox-option{all:unset!important;box-sizing:border-box!important;display:flex!important;align-items:center!important;width:100%!important;min-height:40px!important;margin:0!important;padding:9px 11px!important;border-radius:8px!important;background:transparent!important;color:var(--otfe-select-panel-text,#111827)!important;font-family:inherit!important;font-size:inherit!important;font-weight:400!important;line-height:1.25!important;text-align:left!important;white-space:normal!important;cursor:pointer!important}.otfe-combobox-panel .otfe-combobox-option:hover,.otfe-combobox-panel .otfe-combobox-option.is-active,.otfe-combobox-panel .otfe-combobox-option[aria-selected="true"]{background:var(--otfe-select-panel-hover-bg,#f2f5f9)!important;color:var(--otfe-select-panel-text,#111827)!important}.otfe-combobox-panel .otfe-combobox-option:focus-visible{outline:2px solid var(--otfe-focus)!important;outline-offset:-2px!important}.otfe-combobox-panel .otfe-combobox-option:disabled{opacity:.45!important;cursor:not-allowed!important}.otfe-combobox-empty{padding:12px!important;font-size:13px!important;color:var(--otfe-muted)!important}
.otfe-quantity-wrap{display:flex;width:100%;align-items:stretch}.otfe-quantity-wrap .otfe-quantity-input{min-width:0;flex:1;border-radius:0!important;text-align:center}.otfe-qty-btn{flex:0 0 44px;min-width:44px;border:1px solid var(--otfe-border);background:transparent;color:inherit;font:inherit;font-size:20px;line-height:1;cursor:pointer}.otfe-qty-minus{border-radius:inherit 0 0 inherit}.otfe-qty-plus{border-radius:0 inherit inherit 0}.otfe-qty-btn:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.elementor-field-type-otfe-tracking{display:none!important}body.elementor-editor-active .elementor-field-type-otfe-tracking{display:flex!important;opacity:.72}.otfe-tracking-preview{width:100%;padding:9px 11px;border:1px dashed var(--otfe-border);border-radius:6px;font-size:12px}
@media(max-width:767px){.otfe-combobox-panel{max-height:42vh!important}.otfe-qty-btn{flex-basis:46px;min-width:46px}.iti__dropdown-content{max-width:calc(100vw - 20px)!important}}


/* 1.1.2 — consistent chevrons independent of theme fonts/icons */
.otfe-combobox__arrow{
  width:8px!important;
  height:8px!important;
  right:17px!important;
  top:50%!important;
  margin-top:-5px!important;
  border:0!important;
  border-right:1.6px solid currentColor!important;
  border-bottom:1.6px solid currentColor!important;
  border-radius:0!important;
  background:transparent!important;
  transform:rotate(45deg)!important;
  opacity:.65!important;
  font-size:0!important;
  line-height:0!important;
}
.otfe-combobox.is-open .otfe-combobox__arrow{
  margin-top:-1px!important;
  transform:rotate(225deg)!important;
}

/* intl-tel-input country chevron: normalize across themes */
.elementor-field-type-otfe-phone .iti__arrow{
  width:7px!important;
  height:7px!important;
  margin-left:7px!important;
  border:0!important;
  border-right:1.5px solid currentColor!important;
  border-bottom:1.5px solid currentColor!important;
  transform:rotate(45deg)!important;
  opacity:.68!important;
}
.elementor-field-type-otfe-phone .iti__arrow--up{
  transform:rotate(225deg)!important;
}

/* Detached panels are viewport anchored and are repositioned in JS while the page scrolls. */
.otfe-combobox-panel{
  position:fixed!important;
  margin:0!important;
}


/* 1.1.3 — unified phone selector UI with OnTime select dropdowns */
.elementor-field-type-otfe-phone .iti__selected-country{
  padding:0 11px!important;
  gap:0!important;
  border-inline-end:1px solid var(--otfe-phone-chip-border,rgba(17,24,39,.12))!important;
  border-radius:inherit 0 0 inherit!important;
  background:var(--otfe-phone-chip-bg,transparent)!important;
  color:var(--otfe-phone-chip-text,inherit)!important;
  transition:background-color .16s ease!important;
}
.elementor-field-type-otfe-phone .iti__selected-country:hover,
.elementor-field-type-otfe-phone .iti__selected-country[aria-expanded="true"]{
  background:var(--otfe-phone-dropdown-hover-bg,#f2f5f9)!important;
}
.elementor-field-type-otfe-phone .iti__selected-country-primary{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  border-radius:0!important;
}
.elementor-field-type-otfe-phone .iti__selected-country-primary:hover,
.elementor-field-type-otfe-phone .iti__selected-country[aria-expanded="true"] .iti__selected-country-primary{
  background:transparent!important;
}
.elementor-field-type-otfe-phone .iti__selected-dial-code{
  margin-left:8px!important;
  font-weight:600!important;
  color:inherit!important;
}
.elementor-field-type-otfe-phone .iti.otfe-phone-no-arrow .iti__arrow{
  display:none!important;
}
.elementor-field-type-otfe-phone .iti.otfe-phone-no-arrow .iti__selected-country-primary{
  padding-right:0!important;
}

/* Match the phone country dropdown to Enhanced Select / Country Select. */
.iti--detached-country-selector:not(.iti--fullscreen-popup){
  z-index:2147483000!important;
  margin:0!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__country-selector,
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__dropdown-content{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__dropdown-content{
  padding:6px!important;
  background:var(--otfe-phone-dropdown-bg,#fff)!important;
  border:1px solid var(--otfe-phone-dropdown-border,#d6dbe3)!important;
  border-radius:var(--otfe-phone-radius,12px)!important;
  box-shadow:var(--otfe-shadow)!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__search-input-wrapper{
  border:0!important;
  margin:0 0 6px!important;
  padding:0!important;
  background:transparent!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__search-input{
  width:100%!important;
  margin:0!important;
  padding:10px 34px!important;
  min-height:40px!important;
  border-radius:8px!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__search-icon{
  left:11px!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__search-clear{
  right:4px!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__country-list{
  max-height:250px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__country{
  min-height:40px!important;
  margin:0!important;
  padding:9px 11px!important;
  border-radius:8px!important;
  gap:0!important;
  font-size:inherit!important;
  font-weight:400!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__country + .iti__country{
  margin-top:1px!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__country-check{
  display:none!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__country-name{
  flex:1 1 auto!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__dial-code{
  flex:0 0 auto!important;
  margin-left:6px!important;
  color:#697386!important;
}
.iti--detached-country-selector:not(.iti--fullscreen-popup) .iti__country-list .iti__flag{
  margin-right:9px!important;
}


/* 1.1.4 — stable dropdown behavior + country-field polish */
.otfe-combobox-panel .otfe-country-flag{
  flex:0 0 auto!important;
  width:22px!important;
  margin-right:9px!important;
  font-size:17px!important;
  line-height:1!important;
  text-align:center!important;
}
.otfe-combobox-panel .otfe-country-label{
  flex:1 1 auto!important;
  min-width:0!important;
}


/* ---------------------------------------------------------
   1.1.5 — Elementor popup clone safety + proper mobile picker
---------------------------------------------------------- */

/* Generated custom UI always occupies one field slot only. */
.elementor-field-group > .otfe-combobox + .otfe-combobox{
  display:none!important;
}

/* OnTime panel internal structure. */
.otfe-combobox-panel{
  display:flex;
  flex-direction:column;
}
.otfe-combobox-panel[hidden]{
  display:none!important;
}

.otfe-combobox-list{
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
}

/* Desktop does not need a second search box/header. */
.otfe-mobile-picker-head,
.otfe-mobile-picker-search-wrap{
  display:none;
}

/* Mobile sheet. */
@media (max-width:767px){
  .otfe-combobox-panel--mobile{
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    bottom:12px!important;
    top:auto!important;
    width:auto!important;
    max-width:none!important;
    max-height:min(68vh,520px)!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:16px!important;
    background:var(--otfe-select-panel-bg,#fff)!important;
    box-shadow:0 18px 55px rgba(17,24,39,.28)!important;
  }

  .otfe-combobox-panel--mobile .otfe-mobile-picker-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    flex:0 0 auto;
    padding:14px 14px 10px;
    border-bottom:1px solid var(--otfe-select-panel-border,#d6dbe3);
    background:var(--otfe-select-panel-bg,#fff);
  }

  .otfe-mobile-picker-title{
    min-width:0;
    font-family:inherit;
    font-size:15px;
    font-weight:600;
    line-height:1.25;
    color:var(--otfe-select-panel-text,#111827);
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
  }

  .otfe-mobile-picker-close{
    all:unset!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 34px!important;
    width:34px!important;
    height:34px!important;
    border-radius:9px!important;
    background:#f3f5f7!important;
    color:#374151!important;
    cursor:pointer!important;
    font-family:Arial,sans-serif!important;
    font-size:24px!important;
    font-weight:400!important;
    line-height:1!important;
  }

  .otfe-combobox-panel--mobile .otfe-mobile-picker-search-wrap{
    position:relative;
    display:block;
    flex:0 0 auto;
    padding:10px 12px;
    border-bottom:1px solid var(--otfe-select-panel-border,#d6dbe3);
    background:var(--otfe-select-panel-bg,#fff);
  }

  .otfe-mobile-picker-search{
    display:block!important;
    width:100%!important;
    min-height:44px!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding:10px 12px 10px 38px!important;
    border:1px solid var(--otfe-select-search-border,#d6dbe3)!important;
    border-radius:10px!important;
    outline:none!important;
    box-shadow:none!important;
    background:var(--otfe-select-search-bg,#fff)!important;
    color:var(--otfe-select-search-text,#111827)!important;
    font:inherit!important;
    font-size:16px!important; /* avoids iOS zoom */
    line-height:1.3!important;
  }

  .otfe-mobile-picker-search:focus{
    border-color:#2563eb!important;
    box-shadow:0 0 0 3px rgba(37,99,235,.10)!important;
  }

  .otfe-mobile-picker-search-icon{
    position:absolute;
    left:25px;
    top:50%;
    width:12px;
    height:12px;
    margin-top:-7px;
    border:2px solid #667085;
    border-radius:50%;
    pointer-events:none;
  }
  .otfe-mobile-picker-search-icon:after{
    content:"";
    position:absolute;
    width:6px;
    height:2px;
    right:-5px;
    bottom:-3px;
    border-radius:2px;
    background:#667085;
    transform:rotate(45deg);
    transform-origin:left center;
  }

  .otfe-combobox-panel--mobile .otfe-combobox-list{
    overflow:auto!important;
    max-height:none!important;
    padding:6px!important;
    -webkit-overflow-scrolling:touch;
  }

  .otfe-combobox-panel--mobile .otfe-combobox-option{
    min-height:46px!important;
    padding:11px 12px!important;
    border-radius:10px!important;
    font-size:15px!important;
  }

  .otfe-combobox-panel--mobile .otfe-country-flag{
    width:24px!important;
    margin-right:10px!important;
    font-size:18px!important;
  }

  /* The field itself remains a normal Elementor-sized control; tapping it opens the sheet. */
  .otfe-combobox__input[readonly]{
    cursor:pointer!important;
  }
}
