/* VH_SEO_UX_V1: scoped changes; existing header and page styles stay intact. */
.vh-home-hero.vh-home-hero--compact { padding-bottom: 0; }
.vh-home-hero--compact h1 { margin-bottom: 0; }
.vh-city-picker .vh-city-picker__panel { width: min(440px, calc(100vw - 32px)); max-height: min(640px, 75dvh); overflow-y: auto; overscroll-behavior: contain; }
.vh-city-picker__search { padding: 18px 18px 12px; background: #fff; border-radius: 18px 18px 0 0; }
.vh-city-picker__label { display: block; margin-bottom: 9px; color: #0f172a; font-size: 15px; font-weight: 700; }
.vh-city-picker__input-wrap { position: relative; }
.vh-city-picker__input-wrap input { box-sizing: border-box; display: block; width: 100%; min-height: 44px; padding: 10px 42px 10px 12px; border: 1px solid #cbd5e1; border-radius: 10px; background: #fff; color: #0f172a; font: inherit; font-size: 16px; }
.vh-city-picker__input-wrap input:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }
.vh-city-picker__input-wrap input::-webkit-search-cancel-button { -webkit-appearance: none; }
.vh-city-picker__clear { position: absolute; top: 0; right: 0; bottom: 0; width: 40px; border: 0; border-radius: 10px; background: transparent; color: #64748b; font-size: 24px; cursor: pointer; }
.vh-city-picker__section-title { padding: 4px 20px 0; color: #64748b; font-size: 12px; font-weight: 600; }
.vh-city-picker__results { max-height: 300px; overflow-y: auto; padding: 0 10px 4px; overscroll-behavior: contain; }
.vh-city-picker .vh-city-link { min-height: 44px; padding-top: 7px; padding-bottom: 7px; overflow-wrap: anywhere; }
.vh-city-picker .vh-city-link:focus-visible, .vh-city-picker__clear:focus-visible { outline: 2px solid #2563eb; outline-offset: -2px; }
.vh-city-picker__status { margin: 0; padding: 10px 20px 14px; color: #64748b; font-size: 13px; line-height: 1.5; }
@media (max-width: 760px) {
    .vh-city-picker .vh-city-picker__panel { max-height: 60dvh; }
    .vh-city-picker__results { max-height: 30dvh; }
    .vh-city-picker__search { padding: 14px; }
    .vh-city-picker__section-title { padding-left: 16px; }
    .vh-city-picker .vh-dropdown__city-grid { grid-template-columns: minmax(0, 1fr); }
}
