/* Homepage framing only. District geometry and information windows use the shared map. */
.home-map {
    padding-top: 58px;
    background: var(--paper);
    scroll-margin-top: calc(var(--fhe-header-height, 96px) + 20px);
}
.home-map-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 28px;
}
.home-map-heading .eyebrow { margin: 0 0 14px; font-size: 12px; letter-spacing: .13em; }
.home-map-heading h2 { margin: 0; font: 400 clamp(30px, 3.05vw, 46px)/1.2 var(--serif); letter-spacing: -.035em; }
.home-map-heading .text-link { flex-shrink: 0; margin-bottom: 3px; }
.home-map-switcher { padding-bottom: 24px; scroll-margin-top: calc(var(--fhe-header-height, 96px) + 20px); }
.home-map .city-switcher-buttons > a { min-height: 74px; border-radius: 16px; }
.home-map .city-switcher-buttons > a > img { border-radius: 9px; }
.home-map .city-panorama-footer { padding-block: 12px 26px; }
.home-map .city-map-window { background: rgb(241 244 245 / 95%); }
.home-map-countries { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 18px; }
.home-map-countries > a { min-height: 42px; display: inline-flex; align-items: center; padding: 9px 20px; background: #fff; border: 1px solid #ccc; border-radius: 999px; font-size: 14px; }
.home-map-countries > a[aria-current] { background: #282828; color: #fff; border-color: #282828; }
@media (max-width: 1000px) {
    .home-map-heading { align-items: flex-start; flex-direction: column; gap: 16px; }
    .home-map-heading h2 { font-size: 36px; }
}
@media (max-width: 640px) {
    .home-map { padding-top: 36px; }
    .home-map-heading { margin-bottom: 22px; gap: 12px; }
    .home-map-heading .eyebrow { font-size: 10px; line-height: 1.6; margin-bottom: 11px; }
    .home-map-heading h2 { font-size: 30px; line-height: 1.2; }
    .home-map-heading .text-link { font-size: 13px; }
    .home-map-switcher { padding-bottom: 18px; }
    .home-map .city-switcher-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
    .home-map .city-switcher-buttons > a { flex: 1 1 calc((100% - 16px) / 3); min-height: 64px; padding: 10px 6px; border-radius: 13px; }
    .home-map .city-switcher-label strong { font-size: 13px; }
    .home-map .city-switcher-label small { font-size: 10.5px; }
    .home-map .city-panorama-footer { font-size: 9px; padding-bottom: 20px; }
    .fhe-contact-widget[data-home-map-clear=true] { visibility: hidden; pointer-events: none; }
}
