.map-page .site-header{position:relative}.map-intro{padding:2.5rem max(5vw,1.4rem) 2rem;background:var(--cream)}.map-intro .section-kicker{margin-bottom:1rem}.map-intro h1{font-size:clamp(2.6rem,4.3vw,4.4rem);letter-spacing:-.045em;margin-bottom:1rem}.map-intro h1 em{color:#9e553a;font-weight:400}.map-intro>p:not(.section-kicker){max-width:660px;margin-bottom:1.3rem;color:#515c55}.map-back{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #a19684;padding-bottom:.3rem}.map-workspace{padding:2rem max(4vw,1rem) 4rem}.map-controls{display:grid;grid-template-columns:minmax(220px,1fr) minmax(190px,.6fr) auto;gap:1rem;align-items:end;margin-bottom:1rem}.map-controls label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;display:grid;gap:.4rem}.map-controls input,.map-controls select{width:100%;height:48px;padding:.65rem .85rem;border:1px solid #b4b8ab;background:var(--paper);font:400 16px var(--sans);color:var(--ink);border-radius:0}.map-controls input:focus,.map-controls select:focus{outline:2px solid #476453;outline-offset:2px}.map-reset{height:48px;border:1px solid #b4b8ab;background:transparent;padding:.6rem 1rem;font:inherit;cursor:pointer}.map-reset:hover{background:var(--cream)}.map-summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.9rem;font-size:.8rem;color:#505a53}.map-summary p{margin:0}.map-legend{display:flex;flex-wrap:wrap;gap:.9rem;font-size:.72rem}.map-legend span{display:flex;align-items:center;gap:.35rem}.legend-dot{width:11px;height:11px;border-radius:50%;display:inline-block;background:#294d3c}.legend-dot.mobile{background:#fff4e9;border:2px solid #a45636}.legend-dot.area{background:#f5f1e4;border:2px dashed #7b6d4c}.map-layout{display:grid;grid-template-columns:330px minmax(0,1fr);border:1px solid #c9cbbd;min-width:0}.map-results{height:640px;overflow-y:auto;overscroll-behavior:contain;background:var(--paper);scrollbar-width:thin}.map-results:focus{outline:2px solid #476453;outline-offset:2px}.map-result{padding:1.15rem 1.2rem;border-bottom:1px solid #d7d8cf;position:relative}.map-result.selected{background:#e9eee5;box-shadow:inset 4px 0 #294d3c}.map-result[hidden]{display:none}.map-result .result-region{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:#6a705d;margin:0 0 .4rem}.map-result h2{font-size:1.4rem;line-height:1.17;letter-spacing:-.02em;margin-bottom:.5rem}.map-result h2 a:hover{text-decoration:underline;text-underline-offset:3px}.location-note{font-size:.75rem;line-height:1.5;color:#64695d;margin:0 0 .7rem}.location-kind{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#8b482f;display:block;margin-bottom:.25rem}.kind-area{color:#756440}.result-actions{display:flex;gap:1.2rem;flex-wrap:wrap;align-items:center;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.result-actions a{border-bottom:1px solid #81775f;padding:.15rem 0}.locate-property{display:none;border:0;background:none;color:#294d3c;padding:.45rem 0;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;min-height:36px}.map-ready .locate-property{display:inline-flex}.locate-property:hover{text-decoration:underline}.map-canvas-wrap{position:relative;min-width:0;background:#dce4dc}.property-map{width:100%;height:640px;background:#dce4dc;z-index:1}.map-placeholder{padding:2rem;font-size:.9rem}.map-fit{position:absolute;top:12px;right:12px;z-index:500;border:1px solid #aeb8a7;background:#fffdf7;padding:.6rem .8rem;box-shadow:0 1px 5px #0002;font:400 .75rem var(--sans);cursor:pointer}.map-tile-notice{position:absolute;bottom:35px;left:12px;right:12px;z-index:500;background:#fffdf2eF;padding:.5rem .8rem;font-size:.75rem;margin:0;pointer-events:none}.map-help{padding:1rem 0 0;font-size:.78rem;line-height:1.65;color:#586056;max-width:900px}.map-help p{margin-bottom:.6rem}.map-no-results{padding:2rem 1.2rem;font-size:.9rem}.map-pin{background:none!important;border:0!important}.map-pin>span{display:block;width:25px;height:25px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#294d3c;border:2px solid #fff;box-shadow:0 2px 5px #0004}.map-pin>span:after{content:'';display:block;width:7px;height:7px;border-radius:50%;background:#fff;margin:7px}.map-pin.mobile>span{background:#fff5e9;border:2px solid #a45636}.map-pin.mobile>span:after{background:#a45636}.map-pin.area>span{background:#f8f1dc;border:2px dashed #7b6d4c}.map-pin.area>span:after{background:#7b6d4c}.map-cluster{border:4px solid #d9dfcebb;border-radius:50%;background:#294d3c;color:white;display:grid;place-items:center;font:700 13px var(--sans);box-shadow:0 2px 5px #0003}.map-cluster span{display:block}.property-map .leaflet-popup-content{margin:1.1rem;min-width:180px;max-width:265px;font:14px/1.5 var(--sans);color:var(--ink)}.property-map .leaflet-popup-content h3{font-size:1.55rem;line-height:1.1;margin:.35rem 0 .7rem}.property-map .leaflet-popup-content p{margin:.4rem 0 .75rem}.property-map .leaflet-popup-content a{display:inline-block;color:#294d3c;border-bottom:1px solid #294d3c;padding:.3rem 0;font-weight:700}.property-map .leaflet-popup-content .location-kind{font-size:.65rem}.property-map .leaflet-popup-content-wrapper{border-radius:0}.property-map .leaflet-popup-close-button{width:30px;height:30px;font-size:24px}.property-map .leaflet-control-attribution{font-size:10px;max-width:90%;white-space:normal}.property-map .leaflet-control-attribution a{color:#345544}.country-label{font:700 11px var(--sans);color:#5e6c5c;letter-spacing:.13em;text-transform:uppercase;text-shadow:0 1px 2px white;white-space:nowrap;pointer-events:none}.directory-map-link{padding:1rem max(5vw,1.4rem);background:#e7ebdf;display:flex;gap:1rem;justify-content:space-between;align-items:center;font-size:.85rem}.directory-map-link a{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;border-bottom:1px solid #53624e;white-space:nowrap}.map-page :focus-visible{outline:3px solid #a45636;outline-offset:3px}.map-page .leaflet-container img{max-width:none}.map-page .leaflet-control-zoom a{color:var(--ink)}
@media(min-width:1500px){.map-layout{grid-template-columns:370px minmax(0,1fr)}.property-map,.map-results{height:700px}}
@media(max-width:900px){.map-layout{grid-template-columns:280px minmax(0,1fr)}.map-legend{gap:.6rem}.map-summary{align-items:flex-start;flex-direction:column;gap:.6rem}}
@media(max-width:680px){.map-intro{padding-top:2.5rem;padding-bottom:2rem}.map-workspace{padding-top:1.25rem}.map-controls{grid-template-columns:1fr auto;gap:.75rem}.map-controls label:first-child{grid-column:1/-1}.map-controls label:nth-child(2){min-width:0}.map-reset{font-size:.8rem;padding:0 .75rem}.map-layout{display:flex;flex-direction:column}.map-canvas-wrap{order:-1}.property-map{height:430px;height:min(58svh,460px);min-height:320px}.map-results{height:440px}.map-result{padding:1rem}.map-summary{font-size:.75rem}.map-legend{font-size:.65rem}.map-fit{font-size:.68rem;top:10px;right:10px;padding:.55rem}.map-help{font-size:.75rem}.directory-map-link{align-items:flex-start;flex-direction:column;gap:.4rem}.country-label{font-size:9px}}
@media(prefers-reduced-motion:reduce){.map-page *{scroll-behavior:auto!important}.map-page .leaflet-zoom-animated,.map-page .leaflet-marker-icon{transition:none!important}}

.airport-pin{background:#285e7a;border:2px solid white;border-radius:6px;color:white;box-shadow:0 2px 6px #0005;display:grid;place-items:center;font:22px/1 Arial,sans-serif}.airport-label{background:#fffdf6;border:1px solid #285e7a;color:#285e7a;font:700 11px Arial,sans-serif;padding:3px 5px;box-shadow:0 1px 3px #0002}.airport-legend{display:inline-grid;place-items:center;background:#285e7a;color:white;font:12px/1 Arial,sans-serif;width:16px;height:16px;border-radius:3px}.map-legend{max-width:75%;justify-content:flex-end}@media(max-width:900px){.map-legend{max-width:100%;justify-content:flex-start}}

/* Map release: airports and navigation */
