.acw-contact-form,.acw-contact-form *{box-sizing:border-box}
.acw-contact-form{--acw-contact-form-column-gap:16px;position:relative;width:100%;min-width:0;padding:30px 34px 26px;background:#fff;border-radius:22px;box-shadow:0 10px 34px rgba(28,71,139,.09)}
.acw-contact-form__header{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:16px;margin-bottom:24px}
.acw-contact-form__heading-copy{min-width:0}
.acw-contact-form__heading-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:54px;height:54px;border-radius:14px;background:#2f6dcc;color:#fff;box-shadow:0 7px 18px rgba(47,109,204,.22)}
.acw-contact-form__heading-icon svg{width:24px;height:24px;fill:currentColor}
.acw-contact-form__title{margin:0 0 5px;color:#222831;font-size:22px;font-weight:800;line-height:1.5;overflow-wrap:anywhere}
.acw-contact-form__description{color:#7b8596;font-size:13px;line-height:1.9;overflow-wrap:anywhere}
.acw-contact-form__honeypot{position:absolute!important;inset-inline-start:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important}
.acw-contact-form__fields{display:flex;flex-wrap:wrap;column-gap:var(--acw-contact-form-column-gap);row-gap:16px;min-width:0}
.acw-contact-form__field{flex:0 0 calc(var(--acw-field-width,100%) - (var(--acw-contact-form-column-gap)/2));min-width:0;max-width:100%}
.acw-contact-form__field[style*="100%"]{flex-basis:100%}
.acw-contact-form__field--html{overflow-wrap:anywhere}
.acw-contact-form__label{display:block;margin-bottom:7px;color:#343b47;font-size:13px;font-weight:700;line-height:1.5}
.acw-contact-form__required{color:#ef476f}
.acw-contact-form__control{display:block;width:100%;min-width:0;min-height:46px;padding:12px 14px;border:1px solid #e2e7ef;border-radius:9px;outline:0;background:#fff;color:#2f3743;font:inherit;line-height:1.5;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}
.acw-contact-form select.acw-contact-form__control{appearance:none;padding-inline-end:44px;cursor:pointer;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,#77849a 50%),linear-gradient(135deg,#77849a 50%,transparent 50%);background-repeat:no-repeat;background-size:6px 6px,6px 6px;background-position:left 18px center,left 12px center}
.acw-contact-form select.acw-contact-form__control:dir(ltr){background-position:right 18px center,right 12px center}
.acw-contact-form__form--small .acw-contact-form__control{min-height:40px;font-size:13px}
.acw-contact-form__form--large .acw-contact-form__control{min-height:54px;font-size:16px}
.acw-contact-form textarea.acw-contact-form__control{min-height:120px;resize:vertical}
.acw-contact-form__control:focus{border-color:#2f6dcc;box-shadow:0 0 0 4px rgba(47,109,204,.12)}
.acw-contact-form__control[aria-invalid="true"]{border-color:#d6324a}
.acw-contact-form .acw-contact-form__field--tel .acw-contact-form__control{direction:ltr;text-align:right!important;unicode-bidi:plaintext}
.acw-contact-form .acw-contact-form__field--tel .acw-contact-form__control::placeholder{direction:rtl;text-align:right;unicode-bidi:plaintext}

/* Enhanced select: native field remains as a no-JS fallback and form-value source. */
.acw-contact-form__select{position:relative;width:100%;min-width:0}
.acw-contact-form__select.is-open{z-index:80}
.acw-contact-form__select-native.is-enhanced{position:absolute!important;inline-size:1px!important;block-size:1px!important;inset-inline-start:0!important;inset-block-start:0!important;margin:0!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important}
.acw-contact-form__select-trigger{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;min-height:48px;padding:11px 12px 11px 14px;border:1px solid #dce5f0;border-radius:12px;outline:0;background:#fff;color:#2f3743;box-shadow:0 2px 8px rgba(34,68,112,.035);font:inherit;line-height:1.5;text-align:start;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
.acw-contact-form__select-trigger:hover{border-color:#bfd3ec;background:#fff;box-shadow:0 7px 20px rgba(43,87,151,.075)}
.acw-contact-form__select-trigger:focus-visible,.acw-contact-form__select.is-open .acw-contact-form__select-trigger{border-color:#2f6dcc;box-shadow:0 0 0 3px rgba(47,109,204,.10),0 8px 24px rgba(47,109,204,.085)}
.acw-contact-form__select-trigger[aria-invalid="true"]{border-color:#d6324a;box-shadow:0 0 0 3px rgba(214,50,74,.08)}
.acw-contact-form__select-value{min-width:0;overflow:hidden;color:#2f3743;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.acw-contact-form__select-trigger.is-placeholder .acw-contact-form__select-value{color:#707b8c;font-weight:500}
.acw-contact-form__select-chevron{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border-radius:9px;background:#eff5fd;color:#2f6dcc;transition:transform .18s ease,background-color .18s ease,color .18s ease}
.acw-contact-form__select-chevron::before{content:"";width:7px;height:7px;border-inline-end:2px solid currentColor;border-block-end:2px solid currentColor;transform:rotate(45deg) translate(-1px,-1px)}
.acw-contact-form__select.is-open .acw-contact-form__select-chevron{background:#2f6dcc;color:#fff;transform:rotate(180deg)}
.acw-contact-form__select-menu{position:absolute;z-index:90;top:calc(100% + 10px);inset-inline:0;max-height:286px;padding:0 0 7px;overflow:auto;border:1px solid #dbe6f3;border-radius:16px;background:rgba(255,255,255,.99);box-shadow:0 22px 52px rgba(28,61,107,.15),0 4px 14px rgba(28,61,107,.07);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-5px) scale(.995);transform-origin:top center;transition:opacity .16s ease,transform .16s ease,visibility .16s ease;scrollbar-width:thin;scrollbar-color:#c8d7eb transparent}
.acw-contact-form__select-menu::after{content:"";position:absolute;inset-block:15px;inset-inline-end:0;width:3px;border-radius:4px;background:linear-gradient(180deg,#2f6dcc 0%,#8db8ef 100%);opacity:.22;pointer-events:none}
.acw-contact-form__select.is-open .acw-contact-form__select-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
.acw-contact-form__select-menu-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:9px;min-height:46px;padding:11px 14px;border-bottom:1px solid #edf2f7;background:rgba(255,255,255,.98);backdrop-filter:blur(6px)}
.acw-contact-form__select-menu-header::before{content:"";flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:#2f6dcc;box-shadow:0 0 0 4px #eaf2ff}
.acw-contact-form__select-menu-label{min-width:0;overflow:hidden;color:#526078;font-size:12px;font-weight:750;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.acw-contact-form__select-menu-count{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;min-width:28px;height:28px;margin-inline-start:auto;padding-inline:7px;border-radius:999px;background:#eaf2ff;color:#2f6dcc;font-size:12px;font-weight:800;line-height:1}
.acw-contact-form__select-option{display:flex;align-items:center;gap:10px;width:calc(100% - 14px);min-height:48px;margin:6px 7px 0;padding:11px 12px;border:0;border-radius:11px;outline:0;background:transparent;color:#303947;font:inherit;font-size:14px;font-weight:600;line-height:1.45;text-align:start;cursor:pointer;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}
.acw-contact-form__select-option:hover,.acw-contact-form__select-option:focus-visible{background:#f2f7fd;color:#1f5fae;box-shadow:inset 0 0 0 1px rgba(47,109,204,.07)}
.acw-contact-form__select-option:focus-visible{transform:translateY(-1px)}
.acw-contact-form__select-option.is-selected{background:#eaf2ff;color:#1f62bc;font-weight:750;box-shadow:inset 0 0 0 1px rgba(47,109,204,.08)}
.acw-contact-form__select-option.is-placeholder{color:#7d8796;font-weight:600}
.acw-contact-form__select-option::after{content:"✓";display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;margin-inline-start:auto;border-radius:50%;background:#2f6dcc;color:#fff;font-size:12px;font-weight:900;opacity:0;transform:scale(.82);transition:opacity .15s ease,transform .15s ease}
.acw-contact-form__select-option.is-selected::after{opacity:1;transform:scale(1)}
.acw-contact-form__select-option.is-disabled{opacity:.48;cursor:not-allowed}
.acw-contact-form__select-option.is-disabled:hover,.acw-contact-form__select-option.is-disabled:focus-visible{background:transparent;color:inherit;box-shadow:none;transform:none}
.acw-contact-form__form--small .acw-contact-form__select-trigger{min-height:40px;font-size:13px}
.acw-contact-form__form--large .acw-contact-form__select-trigger{min-height:54px;font-size:16px}

.acw-contact-form__choices{display:flex;flex-wrap:wrap;gap:10px 18px;padding-block:8px}
.acw-contact-form__choice{display:inline-flex;align-items:flex-start;gap:8px;color:#3c4552;font-size:14px;cursor:pointer}
.acw-contact-form__choice input{flex:0 0 auto;margin-top:.25em;accent-color:#2f6dcc}
.acw-contact-form__field--acceptance>.acw-contact-form__label{display:none}
.acw-contact-form__field-error{min-height:0;margin-top:5px;color:#d6324a;font-size:12px;line-height:1.5}
.acw-contact-form__actions{display:flex;align-items:center;gap:10px;margin-top:14px}
.acw-contact-form__submit,.acw-contact-form__nav{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:14px 24px;border:0;border-radius:8px;appearance:none;cursor:pointer;font:inherit;font-weight:700;line-height:1.2;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}
.acw-contact-form__submit{width:100%;background:#2f6dcc;color:#fff;box-shadow:0 7px 18px rgba(47,109,204,.22)}
.acw-contact-form__submit:hover{background:#2459a8;transform:translateY(-1px)}
.acw-contact-form__submit:disabled{cursor:not-allowed;opacity:.65;transform:none}
.acw-contact-form__submit-icon{display:inline-flex}
.acw-contact-form__submit-icon svg{width:17px;height:17px;fill:currentColor}
.acw-contact-form__nav{background:#eef4fc;color:#2459a8}
.acw-contact-form__spinner{display:none;width:17px;height:17px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:acw-cf-spin .7s linear infinite}
.acw-contact-form__form.is-loading .acw-contact-form__spinner{display:inline-block}
.acw-contact-form__message{display:none;margin-top:14px;padding:12px 14px;border-radius:9px;font-size:13px;line-height:1.8;overflow-wrap:anywhere}
.acw-contact-form__message.is-visible{display:block}
.acw-contact-form__message--success{background:#edf9f3;color:#14804a}
.acw-contact-form__message--error{background:#fff1f3;color:#d6324a}
.acw-contact-form__privacy{margin-top:16px;color:#8a94a4;text-align:center;font-size:12px;line-height:1.8;overflow-wrap:anywhere}
.acw-contact-form__progress{display:flex;align-items:flex-start;gap:12px;margin-bottom:22px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
.acw-contact-form__progress-item{position:relative;display:flex;align-items:center;gap:7px;min-width:max-content;color:#8b95a5;font-size:12px}
.acw-contact-form__progress-item b{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#edf1f7;color:#7a8494}
.acw-contact-form__progress-item.is-active,.acw-contact-form__progress-item.is-complete{color:#2459a8}
.acw-contact-form__progress-item.is-active b,.acw-contact-form__progress-item.is-complete b{background:#2f6dcc;color:#fff}
@keyframes acw-cf-spin{to{transform:rotate(360deg)}}
@media(max-width:1024px){
  .acw-contact-form{padding:28px 24px 24px}
}
@media(max-width:767px){
  .acw-contact-form{padding:24px 18px}
  .acw-contact-form__header{grid-template-columns:auto minmax(0,1fr);gap:12px;text-align:start}
  .acw-contact-form__heading-icon{width:48px;height:48px;margin-inline:0}
  .acw-contact-form__field{flex-basis:100%}
  .acw-contact-form__actions{flex-wrap:wrap}
  .acw-contact-form__submit,.acw-contact-form__nav{max-width:100%}
  .acw-contact-form__select-menu{max-height:250px;border-radius:14px;box-shadow:0 18px 40px rgba(29,57,99,.17),0 3px 10px rgba(29,57,99,.07)}
  .acw-contact-form__select-option{min-height:48px;padding-block:12px}
}
@media(max-width:480px){
  .acw-contact-form{padding:22px 14px}
  .acw-contact-form__header{grid-template-columns:1fr;text-align:center}
  .acw-contact-form__heading-icon{margin-inline:auto}
  .acw-contact-form__title{font-size:20px}
  .acw-contact-form__submit,.acw-contact-form__nav{width:100%}
  .acw-contact-form__select-trigger{padding-inline:12px 10px}
  .acw-contact-form__select-menu{top:calc(100% + 7px)}
  .acw-contact-form__select-menu-header{padding-inline:12px}
  .acw-contact-form__select-option{width:calc(100% - 12px);margin-inline:6px}
}
@media(prefers-reduced-motion:reduce){
  .acw-contact-form__select-trigger,.acw-contact-form__select-chevron,.acw-contact-form__select-menu,.acw-contact-form__select-option,.acw-contact-form__select-option::after{transition:none!important}
}
