.city-button { max-width: 166px; }
.city-button > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.city-button > svg { flex-shrink: 0; }
.mobile-region-button { display: flex; align-items: center; gap: 9px; width: 100%; margin: 0 0 16px; padding: 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--orange-soft); color: var(--link); font: 600 1rem/1.4 var(--font-body); text-align: left; cursor: pointer; }
.mobile-region-button svg { width: 20px; height: 20px; flex-shrink: 0; }
.region-picker-search { display: grid; gap: 8px; font-size: .875rem; font-weight: 600; }
.region-picker-search input { width: 100%; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; font: 400 16px/1.4 var(--font-body); }
.region-picker-list { display: grid; gap: 6px; max-height: min(400px, 48dvh); overflow-y: auto; margin-top: 18px; padding: 3px; }
.region-picker-option { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 44px; padding: 12px; border: 1px solid transparent; border-radius: 10px; color: var(--ink); background: #fff; font: 500 1rem/1.4 var(--font-body); text-align: left; cursor: pointer; }
.region-picker-option:hover { background: var(--orange-soft); }
.region-picker-option.is-selected { background: var(--orange); color: #fff; }
.region-picker-option[hidden], .region-picker-empty[hidden] { display: none; }
.region-picker-option:focus-visible, .region-picker-search input:focus-visible, .mobile-region-button:focus-visible { outline: 2px solid var(--link); outline-offset: 2px; }
.region-contact-select { display: grid; gap: 10px; max-width: 440px; font-weight: 600; }
.region-contact-select select { width: 100%; min-height: 46px; padding: 10px 36px 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; font: 400 1rem/1.4 var(--font-body); }
.region-contact-title { margin: 26px 0 20px; }
.region-contact-phones { display: grid; gap: 12px; margin-top: 18px; }
.region-contact-phones a { color: var(--ink); font-weight: 600; font-size: 1.15rem; }
.region-email { overflow-wrap: anywhere; }
[data-regional-contacts] .company-contact-value { font-size: clamp(1.1rem, 2vw, 1.65rem); }
@media (min-width: 1181px) and (max-width: 1440px) { .header-actions .city-button { max-width: 148px; } }
@media (max-width: 540px) { .region-contact-title { font-size: 1.4rem; } .region-contact-phones a { font-size: 1.05rem; } }
