.enquiry-form .progress-thin > span { width: 33.333%; }
.enquiry-form[data-current-step="2"] .progress-thin > span { width: 66.666%; }
.enquiry-form[data-current-step="3"] .progress-thin > span { width: 100%; }
.progress-one > span { width: 33.333%; }
.field-help-inline { color: #8a96a2; font-size: 10px; font-weight: 500; }
.address-autocomplete { position: relative; min-width: 0; }
.address-combobox-wrap { position: relative; }
.address-search-input { padding-right: 42px; }
.address-spinner { position: absolute; right: 14px; top: 50%; width: 17px; height: 17px; margin-top: -8px; border: 2px solid #d5dde3; border-top-color: #0b6e5d; border-radius: 50%; animation: address-spin .7s linear infinite; }
@keyframes address-spin { to { transform: rotate(360deg); } }
.address-results { position: absolute; z-index: 20; top: calc(100% + 5px); left: 0; right: 0; max-height: 280px; overflow-y: auto; margin: 0; padding: 5px; list-style: none; background: #fff; border: 1px solid #cbd7dc; border-radius: 10px; box-shadow: 0 16px 36px rgba(22, 43, 52, .16); }
.address-results li { padding: 11px 12px; border-radius: 7px; color: #24363d; cursor: pointer; font-size: 14px; line-height: 1.35; }
.address-results li + li { border-top: 1px solid #edf1f3; }
.address-results li:hover,.address-results li[aria-selected="true"] { background: #eaf7f3; color: #075f50; }
.address-status { min-height: 18px; color: #65757c; font-size: 12px; line-height: 1.4; }
.linz-attribution { color: #718087; font-size: 11px; line-height: 1.4; }
.linz-attribution a { color: #48656f; text-decoration: underline; text-underline-offset: 2px; }
.manual-address-toggle { width: max-content; max-width: 100%; padding: 0; border: 0; background: transparent; color: #0b6e5d; font: inherit; font-size: 12px; font-weight: 700; text-align: left; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.manual-address-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; padding: 16px; border: 1px solid #dbe4e7; border-radius: 10px; background: #f8faf9; }
.manual-address-fields[hidden] { display: none; }
.manual-address-fields .use-lookup { align-self: end; margin-bottom: 10px; }
.selected-address { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 11px 12px; border: 1px solid #b9dacf; border-radius: 9px; background: #f0faf7; }
.selected-address[hidden] { display: none; }
.selected-address > span { display: grid; gap: 2px; min-width: 0; color: #31464d; font-size: 13px; }
.selected-address strong { color: #08705d; font-size: 10px; letter-spacing: .05em; text-transform: uppercase; }
.selected-address button { flex: 0 0 auto; padding: 5px 8px; border: 0; background: transparent; color: #0b6e5d; font-size: 12px; font-weight: 700; cursor: pointer; }
.address-market-notice { display: grid; gap: 3px; margin-bottom: 16px; padding: 12px 14px; border: 1px solid #b9dacf; border-radius: 9px; background: #f0faf7; color: #31464d; font-size: 13px; }
.address-market-notice strong { color: #08705d; }
@media (max-width: 520px) {
  .manual-address-fields { grid-template-columns: 1fr; padding: 13px; }
  .address-results { max-height: 245px; }
  .selected-address { align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) { .address-spinner { animation-duration: 1.4s; } }
