/* DE-LIS / unified international telephone selector
   Appended after legacy app.css and V4 page CSS. Library DOM and form actions untouched.
   intl-tel-input v25.13.1; covers forms, modals, fixed body portal popups. */
:root{
  --dl-phone-ink:#24343d;
  --dl-phone-sub:#52636d;
  --dl-phone-accent:#a83150;
  --dl-phone-border:#d8dfe1;
  --dl-phone-surface:#fff;
}
.iti,
.dq-field .iti,
.dlv4-inquiry .iti,
.form-field .iti{
  --iti-border-color:#d8dfe1;
  --iti-hover-color:#f7ebef;
  --iti-dialcode-color:#657781;
  --iti-dropdown-bg:#fff;
  --iti-search-icon-color:#7b8991;
  display:block;
  position:relative;
  width:100%;
  max-width:100%;
  min-width:0;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  color:var(--dl-phone-ink);
}
.iti:has(.iti__selected-country[aria-expanded="true"]){
  z-index:1200;
}
.iti input.iti__tel-input,
.dq-field .iti input.iti__tel-input,
.dlv4-inquiry .iti input.iti__tel-input,
.form-field .iti input.iti__tel-input{
  display:block;
  box-sizing:border-box;
  width:100%!important;
  max-width:100%;
  min-width:0;
  color:#25343e!important;
  text-align:left;
}
.iti .iti__country-container{
  z-index:3;
  padding:4px 0 4px 5px;
  box-sizing:border-box;
}
.iti button.iti__selected-country,
.iti .iti__selected-country{
  display:flex;
  align-items:center;
  justify-content:center;
  height:100%;
  min-width:44px;
  padding:0;
  margin:0;
  border:0;
  border-radius:7px;
  box-shadow:none;
  background:transparent;
  color:#34434d;
  cursor:pointer;
}
.iti .iti__selected-country-primary{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  height:100%;
  padding:0 9px;
  border-radius:6px;
  background:transparent;
  transition:background-color .15s;
}
.iti button.iti__selected-country:hover .iti__selected-country-primary,
.iti button.iti__selected-country:focus-visible .iti__selected-country-primary{
  background:#f6e9ee;
}
.iti button.iti__selected-country:focus-visible{
  outline:2px solid #b34b69;
  outline-offset:1px;
}
.iti .iti__flag{flex:0 0 auto;box-shadow:0 0 0 1px rgba(20,34,41,.12);border-radius:2px}
.iti .iti__arrow{border-top-color:#677985}
.iti .iti__arrow--up{border-bottom-color:#677985}
.iti .iti__selected-dial-code{color:#364751!important;font-size:13px;font-weight:650}

/* Dropdown — explicit palette overrides old theme rules leaking into .iti. */
.iti .iti__dropdown-content,
.iti--container .iti__dropdown-content{
  box-sizing:border-box;
  color:#24343d!important;
  background:#fff!important;
  border:1px solid #d7dfe2!important;
  border-radius:10px!important;
  box-shadow:0 19px 48px rgba(13,28,37,.19),0 3px 12px rgba(13,28,37,.075)!important;
  overflow:hidden;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:13px;
  line-height:1.45;
}
.iti--inline-dropdown .iti__dropdown-content{
  z-index:1205!important;
  width:min(365px,calc(100vw - 32px))!important;
  min-width:min(290px,calc(100vw - 32px));
  max-width:calc(100vw - 24px)!important;
  margin-top:7px;
  margin-left:0;
  left:var(--dl-phone-offset-x,0px);
}
.iti--container{
  z-index:20050!important;
}
.iti--container:not(.iti--fullscreen-popup) .iti__dropdown-content{
  width:min(365px,calc(100vw - 32px))!important;
  max-width:calc(100vw - 24px);
}
.iti .iti__search-input-wrapper,
.iti--container .iti__search-input-wrapper{
  height:auto;
  min-height:58px;
  padding:9px 10px!important;
  display:flex;
  align-items:center;
  background:#f7f9f9!important;
  border-bottom:1px solid #e5e9e9;
}
.iti .iti__search-input,
.iti--container .iti__search-input{
  box-sizing:border-box;
  display:block;
  width:100%!important;
  min-width:0;
  height:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:8px 33px 8px 36px!important;
  background:#fff!important;
  color:#22333c!important;
  border:1px solid #dbe2e4!important;
  border-radius:6px!important;
  outline:0;
  box-shadow:none!important;
  font:500 13px/1.35 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  -webkit-appearance:none;
  appearance:none;
}
.iti .iti__search-input::placeholder,
.iti--container .iti__search-input::placeholder{
  color:#778790!important;opacity:1;
}
.iti .iti__search-input:focus,
.iti--container .iti__search-input:focus{
  border-color:#ba5774!important;
  outline:2px solid rgba(170,53,82,.19)!important;
  outline-offset:0;
}
.iti .iti__search-icon,
.iti--container .iti__search-icon{
  z-index:2;left:23px;top:50%;transform:translateY(-50%);
  color:#677983;pointer-events:none;
}
.iti .iti__search-clear,
.iti--container .iti__search-clear{
  top:50%;right:15px;transform:translateY(-50%);
  z-index:2;border-radius:5px;
}
.iti .iti__search-clear:hover,
.iti--container .iti__search-clear:hover{background:#f2e2e8}
.iti .iti__country-list,
.iti--container .iti__country-list{
  box-sizing:border-box;
  display:block;
  width:100%;
  margin:0!important;
  padding:6px!important;
  list-style:none!important;
  max-height:min(280px,45dvh);
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#bac4c9 transparent;
  background:#fff!important;
}
.iti .iti__country,
.iti--container .iti__country{
  display:flex!important;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:37px;
  margin:0!important;
  padding:8px 10px!important;
  border:0!important;
  border-radius:5px;
  background:transparent;
  color:#273942!important;
  box-shadow:none;
  outline:none;
  text-transform:none;
  font:500 13px/1.45 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  cursor:pointer;
}
.iti .iti__country .iti__flag,
.iti--container .iti__country .iti__flag{
  width:16px;height:12px;flex:0 0 16px;
  margin:0!important;padding:0;
}
.iti .iti__country-name,
.iti--container .iti__country-name{
  display:block;
  flex:1 1 auto;
  min-width:0;
  margin:0!important;
  padding:0;
  color:#293a43!important;
  line-height:1.5;
  white-space:normal;
  overflow-wrap:break-word;
  text-align:left;
  opacity:1;
  text-transform:none;
}
.iti .iti__dial-code,
.iti--container .iti__dial-code{
  display:block;
  flex:0 0 auto;
  margin:0 0 0 auto!important;
  color:#667983!important;
  font:600 12px/1.5 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  text-align:right;
  white-space:nowrap;
  opacity:1;
}
.iti .iti__country.iti__highlight,
.iti .iti__country:hover,
.iti--container .iti__country.iti__highlight,
.iti--container .iti__country:hover{
  background:#f8e9ee!important;
  color:#8d2b45!important;
}
.iti .iti__country.iti__highlight .iti__country-name,
.iti .iti__country:hover .iti__country-name,
.iti--container .iti__country.iti__highlight .iti__country-name{
  color:#8d2b45!important;
}
.iti .iti__country.iti__highlight .iti__dial-code,
.iti .iti__country:hover .iti__dial-code,
.iti--container .iti__country.iti__highlight .iti__dial-code{
  color:#8d2b45!important;
}
.iti .iti__no-results,
.iti--container .iti__no-results{color:#51636d!important;padding:22px 16px!important;font-size:13px}
.iti .iti__a11y-text{clip-path:inset(50%)}

/* Keep the dropdown above adjacent fields and modal chrome. */
.form__row:has(.iti__selected-country[aria-expanded="true"]),
.form__col:has(.iti__selected-country[aria-expanded="true"]),
.form-field:has(.iti__selected-country[aria-expanded="true"]),
.dq-field:has(.iti__selected-country[aria-expanded="true"]){
  position:relative;
  z-index:1250;
}
.form__col:has(.iti__selected-country[aria-expanded="true"]),
.dlv4-inquiry__formbox:has(.iti__selected-country[aria-expanded="true"]),
.modal__body:has(.iti__selected-country[aria-expanded="true"]){
  overflow:visible!important;
}
/* Native portal used by V4 quote/forms keeps menu outside scrolling modals. */
.iti--container.iti--fullscreen-popup{
  z-index:20050!important;
  padding:clamp(12px,4vw,28px);
  align-items:center;
  justify-content:center;
  background:rgba(16,26,32,.65);
}
.iti--fullscreen-popup .iti__dropdown-content{
  width:min(420px,100%)!important;
  max-width:100%;
  max-height:min(560px,calc(100dvh - 38px));
}
.iti--fullscreen-popup .iti__country-list{
  max-height:min(65dvh,430px);
}
@media(max-width:650px){
  .iti .iti__country-list,.iti--container .iti__country-list{
    max-height:min(300px,48dvh);
  }
  .iti--inline-dropdown .iti__dropdown-content{
    width:min(340px,calc(100vw - 26px))!important;
    max-width:calc(100vw - 20px)!important;
  }
  .iti .iti__country,.iti--container .iti__country{
    min-height:43px;
    padding:10px 9px!important;
  }
  .iti .iti__search-input-wrapper,.iti--container .iti__search-input-wrapper{
    padding:9px 8px!important;
  }
  .iti .iti__search-icon,.iti--container .iti__search-icon{left:20px}
}
@media(prefers-reduced-motion:reduce){
  .iti .iti__selected-country-primary{transition:none}
}

/* The library marks unmatched countries with .iti__hide while searching.
   The themed flex rule must never override that filtering state. */
.iti .iti__country.iti__hide,
.iti--container .iti__country.iti__hide,
.iti .iti__dropdown-content.iti__hide,
.iti--container .iti__dropdown-content.iti__hide{
  display:none!important;
}
