.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.map-page{position:relative;height:calc(100dvh - var(--site-header-offset, 4.5rem));display:flex;flex-direction:column;overflow:hidden}.map-viewport{position:relative;flex:1;min-height:0}.map-canvas,.rw-map-container{position:absolute;inset:0;width:100%;height:100%;background-color:var(--color-parchment);background-image:linear-gradient(color-mix(in srgb,var(--color-mist) 22%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--color-mist) 22%,transparent) 1px,transparent 1px);background-size:40px 40px}.rw-map-container.maplibregl-map{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}.map-loading{position:absolute;inset:0;z-index:2;display:grid;place-content:center;gap:.5rem;color:color-mix(in srgb,var(--color-canopy) 50%,transparent);pointer-events:none;transition:opacity .3s var(--ease-out-quart)}.map-loading.is-loaded{opacity:0}.map-loading-mark{animation:map-spin 8s linear infinite}.map-loading p{margin:0;font-size:.75rem;font-weight:600;color:var(--color-stone);text-align:center}@keyframes map-spin{to{transform:rotate(360deg)}}.map-hud{margin-top:var(--site-header-offset, 4.5rem);position:absolute;top:.75rem;left:.75rem;z-index:5;display:flex;flex-direction:column;gap:.4rem;width:min(340px,calc(100% - 5rem))}.map-hud-search{position:relative;display:flex;align-items:center}.map-hud-search-icon{position:absolute;left:.7rem;color:var(--color-stone);opacity:.5;pointer-events:none;display:flex}.map-hud-search-input{width:100%;padding:.55rem 2rem .55rem 2.1rem;border:1.5px solid color-mix(in srgb,var(--color-mist) 80%,var(--color-parchment));border-radius:var(--radius-xl);font-size:.8125rem;background:color-mix(in srgb,var(--color-cream) 92%,white);color:var(--color-dusk);outline:none;box-shadow:0 2px 8px color-mix(in srgb,var(--color-dusk) 8%,transparent),inset 0 1px 2px color-mix(in srgb,var(--color-dusk) 3%,transparent);transition:border-color .15s,box-shadow .15s,background .15s;appearance:none;-webkit-appearance:none;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.map-hud-search-input::-webkit-search-decoration,.map-hud-search-input::-webkit-search-cancel-button{display:none}.map-hud-search-input:focus{border-color:var(--color-canopy);background:var(--color-cream);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-canopy) 14%,transparent),0 2px 8px color-mix(in srgb,var(--color-dusk) 10%,transparent)}.map-hud-search-input::placeholder{color:var(--color-stone);opacity:.5}.map-hud-kbd{position:absolute;right:.6rem;display:flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;border:1px solid var(--color-mist);border-radius:var(--radius-xs);background:var(--color-cream);font-family:var(--font-mono);font-size:.65rem;color:var(--color-stone);pointer-events:none;box-shadow:0 1px color-mix(in srgb,var(--color-mist) 60%,transparent)}.map-hud-search-clear{position:absolute;right:.55rem;display:flex;align-items:center;justify-content:center;width:1.3rem;height:1.3rem;border:none;border-radius:50%;background:none;color:var(--color-stone);cursor:pointer;transition:background .12s,color .12s}.map-hud-search-clear:hover{background:var(--color-mist);color:var(--color-forest)}.map-hud-bar{display:flex;align-items:center;gap:.35rem}.map-hud-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .65rem;border:1.5px solid color-mix(in srgb,var(--color-mist) 80%,var(--color-parchment));border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-cream) 92%,white);font-size:.72rem;font-weight:600;color:var(--color-forest);cursor:pointer;white-space:nowrap;box-shadow:0 2px 6px color-mix(in srgb,var(--color-dusk) 6%,transparent);transition:border-color .13s,background .13s,box-shadow .13s,transform .13s;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.map-hud-btn:hover{border-color:color-mix(in srgb,var(--color-canopy) 40%,var(--color-mist));background:var(--color-cream);box-shadow:0 3px 10px color-mix(in srgb,var(--color-dusk) 10%,transparent)}.map-hud-btn:active{transform:scale(.96);box-shadow:inset 0 1px 3px color-mix(in srgb,var(--color-dusk) 8%,transparent);transition-duration:.06s}.map-hud-btn[aria-expanded=true]{background:var(--color-forest);border-color:var(--color-forest);color:var(--color-cream);box-shadow:0 2px 8px color-mix(in srgb,var(--color-forest) 25%,transparent)}.map-hud-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;padding:0 .25rem;border-radius:var(--radius-full);background:var(--color-forest);color:var(--color-cream);font-size:.62rem;font-weight:700;font-variant-numeric:tabular-nums}.map-hud-btn[aria-expanded=true] .map-hud-badge{background:var(--color-cream);color:var(--color-forest)}.map-hud-count{margin-left:auto;padding:.3rem .55rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-cream) 88%,white);font-size:.68rem;font-weight:600;color:var(--color-stone);white-space:nowrap;box-shadow:0 1px 4px color-mix(in srgb,var(--color-dusk) 5%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid color-mix(in srgb,var(--color-mist) 60%,transparent)}.map-hud-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem}.map-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.22rem .45rem;border:1px solid color-mix(in srgb,var(--color-mist) 80%,var(--color-parchment));border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-cream) 92%,white);color:var(--color-forest);font-size:.65rem;font-weight:600;line-height:1;text-decoration:none;white-space:nowrap;box-shadow:0 1px 3px color-mix(in srgb,var(--color-dusk) 5%,transparent);transition:border-color .12s,background .12s;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.map-chip:hover{border-color:color-mix(in srgb,var(--color-canopy) 40%,var(--color-mist));background:var(--color-cream)}.map-chip-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.map-chip-x{flex-shrink:0;opacity:.6}.map-chip-clear{font-size:.65rem;font-weight:600;color:var(--color-forest);text-decoration:none;padding:.2rem .4rem;border-radius:var(--radius-sm);transition:background .12s}.map-chip-clear:hover{background:color-mix(in srgb,var(--color-cream) 80%,white)}.map-legend{position:absolute;bottom:.75rem;left:.75rem;z-index:4;display:flex;flex-wrap:wrap;gap:.3rem}.map-legend-item{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .45rem;border:1px solid color-mix(in srgb,var(--color-mist) 60%,transparent);border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-cream) 88%,white);font-size:.62rem;font-weight:600;color:var(--color-forest);white-space:nowrap;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 1px 3px color-mix(in srgb,var(--color-dusk) 4%,transparent)}.map-legend-dot{width:6px;height:6px;border-radius:50%;background:var(--legend-color);flex-shrink:0}.map-drawer{position:fixed;inset:0;z-index:20;pointer-events:none}.map-drawer[aria-hidden=false]{pointer-events:auto}.map-drawer-backdrop{position:absolute;inset:0;background:color-mix(in srgb,var(--color-dusk) 18%,transparent);opacity:0;transition:opacity .22s var(--ease-out-quart);will-change:opacity;transform:translateZ(0)}.map-drawer[aria-hidden=false] .map-drawer-backdrop{opacity:1}.map-drawer-sheet{position:fixed;top:0;bottom:0;width:min(360px,85vw);background:var(--color-cream);display:flex;flex-direction:column;box-shadow:0 0 24px color-mix(in srgb,var(--color-dusk) 12%,transparent);transition:transform .28s var(--ease-out-quart);overflow:hidden;will-change:transform,opacity;backface-visibility:hidden;transform:translateZ(0)}.map-drawer-handle{display:none}.map-drawer-sheet--start{left:0;transform:translate(-100%);border-right:1px solid var(--color-mist)}.map-drawer-sheet--end{right:0;transform:translate(100%);border-left:1px solid var(--color-mist)}.map-drawer[aria-hidden=false] .map-drawer-sheet{transform:translate(0)}.map-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem .75rem;border-bottom:1.5px solid color-mix(in srgb,var(--color-mist) 60%,transparent);flex-shrink:0}.map-drawer-head-copy{display:flex;align-items:baseline;gap:.5rem;min-width:0}.map-drawer-title{margin:0;font-family:var(--font-display);font-size:1.15rem;font-weight:400;font-style:italic;letter-spacing:-.02em;color:var(--color-forest)}.map-drawer-count{font-size:.72rem;font-weight:600;color:var(--color-stone)}.map-drawer-close{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1.5px solid var(--color-mist);border-radius:var(--radius-md);background:var(--color-parchment);color:var(--color-stone);cursor:pointer;flex-shrink:0;transition:background .12s,border-color .12s,color .12s}.map-drawer-close:hover{background:var(--color-cream);border-color:var(--color-canopy);color:var(--color-forest)}.map-drawer-close:active{transform:scale(.92);transition-duration:.06s}.map-drawer-body{flex:1;overflow-y:auto;padding:.75rem 1rem 1.5rem;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--color-mist) 60%,var(--color-stone)) transparent}.map-drawer-foot{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1rem;border-top:1.5px solid color-mix(in srgb,var(--color-mist) 60%,transparent);flex-shrink:0;background:var(--color-parchment)}.filter-group{border:none;padding:0;margin:0 0 1.25rem}.filter-label{display:block;margin-bottom:.5rem;font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-stone);padding:0}.filter-options{display:flex;flex-wrap:wrap;gap:.35rem}.filter-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.38rem .72rem;border-radius:var(--radius-md);border:1.5px solid var(--color-mist);background:var(--color-parchment);font-size:.75rem;font-weight:500;color:var(--color-stone);text-decoration:none;cursor:pointer;white-space:nowrap;transition:border-color .13s,background .13s,color .13s,box-shadow .13s,transform .13s}.filter-pill:hover{border-color:color-mix(in srgb,var(--color-canopy) 45%,var(--color-mist));color:var(--color-forest);background:var(--color-cream)}.filter-pill:active{transform:scale(.96);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--color-dusk) 6%,transparent);transition-duration:.06s}.filter-pill--active{background:var(--color-forest);border-color:var(--color-forest);color:#fff;box-shadow:0 1px 3px color-mix(in srgb,var(--color-forest) 25%,transparent)}.filter-pill--active:hover{background:color-mix(in srgb,var(--color-forest) 90%,black);color:#fff}.filter-pill-dot{width:7px;height:7px;border-radius:50%;background:var(--pill-accent, currentColor);flex-shrink:0;opacity:.75}.filter-pill--active .filter-pill-dot{background:#fff;opacity:.9}.filter-pill--wide{width:100%;justify-content:center}.filter-pill-star{font-size:.7em;line-height:1}.filter-select-wrap{position:relative;display:flex;align-items:center}.filter-select{appearance:none;-webkit-appearance:none;width:100%;padding:.45rem 1.8rem .45rem .75rem;border:1.5px solid var(--color-mist);border-radius:var(--radius-md);background:var(--color-parchment);font-size:.75rem;font-weight:500;color:var(--color-forest);cursor:pointer;outline:none;transition:border-color .13s,box-shadow .13s}.filter-select:focus{border-color:var(--color-canopy);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-canopy) 10%,transparent)}.filter-select-arrow{position:absolute;right:.55rem;pointer-events:none;color:var(--color-stone);display:flex}.filter-clear-all{font-size:.75rem;font-weight:600;color:var(--color-forest);text-decoration:none;transition:color .12s}.filter-clear-all:hover{color:var(--color-canopy)}.filter-result-count{font-size:.72rem;font-weight:600;color:var(--color-stone)}.list-places{list-style:none;margin:0;padding:0}.list-row{display:flex;align-items:center;gap:.55rem;padding:.6rem .5rem;text-decoration:none;color:inherit;border-bottom:1px solid color-mix(in srgb,var(--color-mist) 45%,transparent);transition:background .12s,border-color .12s}.list-row:hover,.list-row--active{background:color-mix(in srgb,var(--row-accent, var(--color-canopy)) 5%,var(--color-cream));border-bottom-color:color-mix(in srgb,var(--row-accent, var(--color-canopy)) 18%,var(--color-mist))}.list-row:active{background:color-mix(in srgb,var(--row-accent, var(--color-canopy)) 10%,var(--color-parchment));transition-duration:.06s}.list-row-dot{width:8px;height:8px;border-radius:50%;background:var(--row-accent, var(--color-canopy));flex-shrink:0;box-shadow:0 0 0 2px color-mix(in srgb,var(--row-accent, var(--color-canopy)) 15%,transparent)}.list-row-name{font-family:var(--font-display);font-size:.9375rem;font-weight:400;color:var(--color-forest);line-height:1.25;letter-spacing:-.015em;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-row-loc{font-size:.7rem;color:var(--color-stone);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:8rem;flex-shrink:0}.list-row-arrow{color:color-mix(in srgb,var(--color-mist) 80%,var(--color-stone));flex-shrink:0;opacity:0;transform:translate(-3px);transition:opacity .15s,transform .15s var(--ease-out-quart)}.list-row:hover .list-row-arrow,.list-row--active .list-row-arrow{opacity:1;transform:translate(0);color:var(--row-accent, var(--color-canopy))}.list-empty{padding:3rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}.list-empty-title{font-family:var(--font-display);font-size:1.1rem;font-weight:400;font-style:italic;color:var(--color-forest);margin:0}.list-empty-msg{font-size:.8rem;color:var(--color-stone);margin:0;line-height:1.5}.list-empty-reset{display:inline-flex;margin-top:.5rem;padding:.4rem 1rem;border:1.5px solid var(--color-mist);border-radius:var(--radius-md);background:var(--color-parchment);font-size:.78rem;font-weight:600;color:var(--color-forest);text-decoration:none;transition:border-color .13s,background .13s}.list-empty-reset:hover{border-color:var(--color-canopy);background:var(--color-cream)}.rw-popup-container .maplibregl-popup-content{padding:0;border-radius:var(--radius-md);box-shadow:0 4px 20px #0000001f,0 1px 4px #0000000f;border:1px solid var(--color-mist);overflow:hidden;background:var(--color-cream);animation:popup-in .18s var(--ease-out-quart) both}@keyframes popup-in{0%{opacity:0;transform:translateY(4px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.rw-popup-container .maplibregl-popup-tip{border-top-color:var(--color-cream)}.rw-popup-container .maplibregl-popup-close-button{font-size:16px;color:var(--color-stone);padding:2px 6px;right:4px;top:4px;border-radius:var(--radius-sm);transition:background .12s}.rw-popup-container .maplibregl-popup-close-button:hover{background:var(--color-parchment);color:var(--color-forest)}.rw-popup{padding:.7rem .8rem;min-width:170px}.rw-popup-name{display:block;font-family:var(--font-display);font-size:.92rem;font-weight:500;color:var(--color-forest);text-decoration:none;line-height:1.3;transition:color .12s}.rw-popup-name:hover{color:var(--color-canopy)}.rw-popup-location{font-size:.72rem;color:var(--color-stone);margin-top:.15rem}.rw-popup-species-row{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.35rem}.rw-popup-species{display:inline-flex;align-items:center;gap:.2rem;font-size:.65rem;font-weight:500;color:var(--sc, var(--color-canopy));background:color-mix(in srgb,var(--sc, var(--color-canopy)) 8%,var(--color-cream));border:1px solid color-mix(in srgb,var(--sc, var(--color-canopy)) 18%,var(--color-mist));padding:.12rem .4rem;border-radius:var(--radius-full);white-space:nowrap}.rw-popup-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}.rw-popup-meta{display:flex;align-items:center;gap:.35rem;margin-top:.35rem;font-size:.68rem;color:var(--color-stone)}.rw-popup-access--open{color:#166534}.rw-popup-access--restricted{color:#92400e}.rw-popup-area{opacity:.7}.maplibregl-ctrl-group{border-radius:var(--radius-md)!important;box-shadow:0 2px 10px #0000001a!important;border:1px solid var(--color-mist)!important;overflow:hidden}.maplibregl-ctrl-group button{width:34px!important;height:34px!important}.maplibregl-ctrl-group button:active{background:var(--color-mist)!important}.maplibregl-ctrl-group button+button{border-top:1px solid var(--color-mist)!important}.maplibregl-ctrl-attrib{font-size:.6rem!important;background:#f8f4efd9!important;border-radius:var(--radius-sm)!important}.rw-map-fallback{display:flex;align-items:center;justify-content:center;background:var(--color-parchment);border:1px dashed var(--color-mist)}.rw-map-fallback-inner{text-align:center;color:var(--color-stone);padding:2rem;font-size:.85rem}.map-hud-btn:focus-visible,.map-hud-search-input:focus-visible,.map-hud-search-clear:focus-visible,.map-chip:focus-visible,.map-chip-clear:focus-visible,.filter-pill:focus-visible,.filter-select:focus-visible,.list-row:focus-visible,.list-empty-reset:focus-visible,.map-drawer-close:focus-visible{outline:2.5px solid var(--color-canopy);outline-offset:2px}@media(max-width:720px){.map-hud{width:calc(100% - 1.25rem);left:.625rem;top:.625rem}.map-legend{left:.625rem;bottom:.625rem}.map-drawer-sheet{inset:auto 0 0;width:100%;max-height:70dvh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-left:none;border-right:none;border-top:1px solid var(--color-mist)}.map-drawer-sheet--start,.map-drawer-sheet--end{transform:translateY(100%)}.map-drawer[aria-hidden=false] .map-drawer-sheet{transform:translateY(0)}.map-drawer-handle{display:flex;justify-content:center;padding:.5rem 0 .15rem;flex-shrink:0}.map-drawer-handle:after{content:"";width:2rem;height:3px;border-radius:var(--radius-2xs);background:var(--color-mist)}.map-hud-count{display:none}}@media(max-width:480px){.map-hud{width:calc(100% - 1rem);left:.5rem;top:.5rem}.map-hud-search-input{font-size:16px}.filter-pill{padding:.5rem .85rem}.map-legend{left:.5rem;bottom:.5rem}}@media(prefers-reduced-motion:reduce){.map-drawer-sheet,.map-drawer-backdrop,.map-loading,.map-loading-mark,.list-row,.list-row-arrow,.map-hud-btn,.map-hud-search-input,.map-hud-search-clear,.map-chip,.filter-pill,.filter-select,.map-drawer-close,.rw-popup-container .maplibregl-popup-content{transition:none;animation:none}}
