/* The original illustrated atlas: ivory paper, engraved landscape and a deep teal local edit. */
:root{--ink:#103f3b;--paper:#f7f0e1;--gold:#bb933d;--muted:#738065;--line:#d7d9ba}
body{background:radial-gradient(ellipse at 16% 20%,#fffaf0 0,transparent 52%),#f7f0e1;color:var(--ink)}
.masthead{height:62px;padding:0 3.2%;background:linear-gradient(100deg,#133e39,#073b3b);gap:30px}.brand{font-size:23px}.brand svg{width:28px;height:30px}.brand small{font-size:6px;letter-spacing:2px}.masthead nav{gap:28px}.masthead nav button{font-size:11px}.preview-label{font-size:8px;letter-spacing:1.8px}.grid-link{font-size:10px;text-decoration:none;align-self:center;color:#e3d6ad}
.intro{height:210px;padding:30px 3.5%;display:block;overflow:hidden}.intro-copy{position:relative;z-index:1;max-width:1050px}.intro .eyebrow{font:14px Georgia,serif;letter-spacing:4.8px;color:#9c752d;margin-bottom:17px}.intro h1{font:clamp(35px,4vw,60px)/1.06 'Libre Caslon Display',Georgia,serif;letter-spacing:-1.2px;margin:0}.intro-subtitle{font:italic 22px/1.5 'Libre Caslon Display',Georgia,serif;margin:12px 0 0;color:#334f44}.botanical-header{position:absolute;right:0;top:-12px;width:620px;height:207px;object-fit:contain;opacity:.7;pointer-events:none}.intro-copy:before{content:'';position:absolute;inset:-20px -40px -12px -40px;background:linear-gradient(90deg,#f9f3e6 0,#f9f3e6ed 50%,#f9f3e600 95%);z-index:-1}.intro>p.edition-name{position:absolute;right:3%;bottom:10px;font-size:9px;letter-spacing:1.8px;color:#737b5e;margin:0;z-index:2;text-transform:uppercase}
.explorer{margin:0 24px;height:calc(100vh - 335px);min-height:655px;max-height:1100px;border:0;border-radius:0;gap:16px;overflow:visible;box-shadow:none}.map-shell{order:1;border-radius:20px;overflow:hidden;background:#bcc79c}.sidebar{order:2;width:350px;border-radius:20px;background:radial-gradient(ellipse at 20% 10%,#1c5049,#063d3b 70%);color:#f9f2df;overflow:hidden;z-index:2;border:1px solid #1a4c43}.sidebar-tabs{padding:0 25px;border-bottom:1px solid #70826755;gap:28px;height:49px}.sidebar-tabs button{color:#afc1a6;font-size:10px}.sidebar-tabs .selected{color:#fff6dc}.sidebar-tabs .selected:after{background:#d2ad57}.sidebar-tabs button:hover{color:#f4d88e}
#sidebar-content{padding:24px 27px;scrollbar-color:#6e8b72 transparent}.sidebar h2{font:42px/1.04 'Libre Caslon Display',Georgia,serif;color:#fff9e7;letter-spacing:-.5px;margin-bottom:10px}.sidebar .eyebrow{font:10px/1.7 Georgia,serif;letter-spacing:2px;color:#dfbb62;margin-bottom:13px}.sidebar .community-copy{font:18px/1.5 'Libre Caslon Display',Georgia,serif;color:#f1efdb;margin:18px 0}.sidebar .small-label{font-size:10px;color:#bfceb4;line-height:1.8}.community-heading{align-items:center;gap:8px}.community-heading h2{font-size:40px}.sidebar .save{color:#d6b567;line-height:1.3}.community-feature-art{height:140px;display:grid;place-items:center;margin:-5px 0 20px;border-bottom:1px solid #a7a27555;padding-bottom:15px;color:#e2cf91}.community-feature-art svg{width:140px;height:140px;filter:drop-shadow(0 3px 1px #032c2a44)}.verified{font-size:9px;color:#b5c9ac;line-height:1.6}.verified:before{border-color:#819577}.footprint-note{font:italic 17px 'Libre Caslon Display',Georgia,serif;color:#d2d8b8;margin:16px 0}.detail-stats{margin:17px 0;border-color:#a8af7c40}.detail-stats>div{padding:10px 0}.detail-stats>div+div{border-color:#a8af7c40}.detail-stats strong{font:25px 'Libre Caslon Display',Georgia,serif;color:#dfcb93}.detail-stats small{font-size:8px;line-height:1.6;color:#a9bda4}
.sidebar .primary{background:linear-gradient(120deg,#d8b66a,#c39742);border:1px solid #eed395;border-radius:4px;color:#123d35;font:20px 'Libre Caslon Display',Georgia,serif;min-height:49px;padding:13px 17px;text-decoration:none}.sidebar .primary span{color:#284b3c}.sidebar .secondary{border-color:#839374;color:#e6e8ce;font-size:11px}.section-label{color:#b8c4a9;font-size:8px;letter-spacing:1.8px;margin-top:28px}.section-label span{color:#c8b078}.sidebar .search{border-color:#738b6a80;color:#fff5df;padding:10px 11px;background:#07322e55}.sidebar .search::placeholder{color:#a7bda6}.sidebar .waypoint-row{border-color:#8aa17a40;color:#f2edcf;padding:12px 0}.waypoint-row strong{font:17px 'Libre Caslon Display',Georgia,serif}.waypoint-row small{color:#9db697}.waypoint-row .spark{color:#d5bd77;width:38px;font-size:24px}.community-mini svg{width:38px;height:38px}.waypoint-row.current{color:#e7cf88}.waypoint-row .arrow{color:#cfb97f}.sidebar .text-button{font-size:10px;color:#d8c890}.sidebar .back{color:#c9d6b7;font-size:10px;padding-bottom:17px}.sidebar .note,.sidebar .empty,.sidebar .category-summary{color:#acc1a7;font-size:10px;line-height:1.8}.sidebar-foot{display:none}
.map-wash{box-shadow:inset 0 0 40px #b7b68038;background:linear-gradient(110deg,#fff2c70d,transparent 70%)}.map-top{top:19px;left:22px;right:18px;z-index:4}.filter-group{background:none;backdrop-filter:none;border:0;box-shadow:none;padding:0;gap:9px}.filter-group button{border:1px solid #fdf6de;border-radius:16px;background:#fbf6e9ed;color:#24463b;padding:8px 14px;min-height:38px;box-shadow:0 2px 4px #40552c13;font-size:0}.filter-group button span{font:16px 'Libre Caslon Display',Georgia,serif;margin:0}.filter-group .selected{background:#0b4240;color:#fff8e6;border-color:#e4d6a4}.icon-button{background:#f8f4e6d9;border-color:#d4d5af;border-radius:5px}.map-title{display:none}.map-controls{top:79px;right:14px;z-index:4}.compass{height:72px;margin-bottom:8px}.compass svg{fill:#f9f4deaa;stroke:#214e42;width:49px;height:49px}.compass .needle{fill:#214e42}.control-stack,.control-button{background:#faf6e6df;border-color:#aeb88c}.control-button.active{background:#11473e;color:#f4d78b}.map-bottom{z-index:4;left:18px;right:18px;bottom:35px;align-items:end;gap:10px}.layer-launch{pointer-events:auto;border:1px solid #b8b788;border-radius:5px;background:#f9f4e6e8;color:#234c3c;padding:11px 13px;display:flex;align-items:center;gap:7px;font-size:17px;box-shadow:0 3px 9px #58634015}.layer-launch span{font-size:10px}.map-key{background:#f9f4e3d9;color:#5f7050;font-size:8px;padding:9px;gap:9px;display:none}.pilot-button{max-width:237px;border-radius:5px;border-color:#b9bf96;background:#faf5e7ed;padding:10px 13px;gap:9px}.pilot-icon{font-size:22px}.pilot-button>span:nth-child(2){font-size:8px;letter-spacing:1px}.pilot-button small{font-size:9px;letter-spacing:0}.pilot-button>span:last-child{margin-left:0}
.maplibregl-marker{z-index:1}.community-marker{z-index:3;filter:drop-shadow(0 4px 3px #5c642b25)}.beacon,.community-marker.is-current .beacon{width:65px;height:64px;background:none;border:0;border-radius:0;box-shadow:none;color:#a58334;animation:none;position:relative;filter:drop-shadow(1px 1px 0 #fff8dd)}.beacon svg{width:65px;height:65px;stroke-width:1.6}.community-marker.is-current .beacon{width:84px;height:83px}.community-marker.is-current .beacon svg{width:84px;height:84px}.community-marker.is-current .beacon:before,.community-marker.is-current .beacon:after{display:none}.marker-label{font:17px 'Libre Caslon Display',Georgia,serif;letter-spacing:1px;text-transform:uppercase;background:#fcf8e9;border:1px solid #ae8a3b;border-radius:50%;padding:11px 27px;box-shadow:0 0 0 3px #faf7e6,0 0 0 4px #ba9c5e;margin-top:-2px;color:#173f36;white-space:nowrap}.community-marker.is-current .marker-label{font-size:23px;padding:14px 31px}.community-marker:hover .beacon{transform:translateY(-3px) scale(1.04)}
.poi-marker{display:flex;align-items:center;width:auto;height:auto;border:0;background:none;box-shadow:none;border-radius:0;padding:0;color:#fff6da;position:relative}.place-symbol{display:grid;place-items:center;width:43px;height:43px;border:2px solid #fff8de;border-radius:50%;background:linear-gradient(135deg,#d7b45b,#b28731);box-shadow:0 0 0 1px #b49a52,0 3px 4px #5c65323b}.place-symbol:after{content:'';position:absolute;left:16px;bottom:-11px;width:8px;height:8px;border:1px solid #fff4ce;border-radius:50%;background:#b78e32;box-shadow:0 -5px 0 -3px #b78e32}.place-symbol svg{width:30px;height:30px;stroke-width:1.8}.place-marker-label{display:none;background:#fff9eced;color:#173f34;padding:5px 9px;border-radius:3px;font:15px/1.15 'Libre Caslon Display',Georgia,serif;max-width:135px;margin-left:5px;box-shadow:0 2px 5px #5b622d22}.poi-marker:hover,.poi-marker.is-selected{background:none;filter:brightness(1.03);transform:none;z-index:5}.poi-marker:hover .place-marker-label,.poi-marker.is-selected .place-marker-label{display:block}.outdoor-marker .place-symbol{background:none;border:0;border-radius:0;box-shadow:none;color:#3e694b;width:50px;height:54px}.outdoor-marker .place-symbol svg{width:50px;height:54px}.outdoor-marker .place-symbol:after{display:none}
.landmark-marker{border:0;padding:0;background:none;display:flex;align-items:center;flex-direction:column;cursor:pointer;color:#285644;z-index:2}.landmark-illustration{display:grid;place-items:center;width:67px;height:72px;filter:drop-shadow(1px 2px 0 #fff8dd) drop-shadow(0 3px 2px #49633345)}.landmark-illustration svg{width:67px;height:72px}.landmark-tower .landmark-illustration,.landmark-tower .landmark-illustration svg{width:59px;height:92px}.landmark-fire{color:#946b46}.landmark-summit .landmark-illustration,.landmark-summit .landmark-illustration svg{width:80px;height:66px}.landmark-name{font:12px 'Libre Caslon Display',Georgia,serif;background:#fff8e9ed;padding:4px 8px;border:1px solid #a9b391;border-radius:3px;margin-top:4px;white-space:nowrap;opacity:0;transition:opacity .15s}.landmark-marker:hover .landmark-name,.landmark-marker:focus-visible .landmark-name,.landmark-marker.is-selected .landmark-name{opacity:1}.landmark-marker:hover .landmark-illustration{transform:translateY(-3px)}
.feature-art{height:175px;color:#e6d8aa;display:grid;place-items:center;position:relative;border-bottom:1px solid #b2ad7850;padding-bottom:18px;margin:0 0 22px;background:radial-gradient(ellipse at center,#36634d55,transparent 65%)}.feature-art>svg{width:175px;height:175px;position:relative;z-index:1;filter:drop-shadow(1px 2px 0 #0c302b)}.feature-art:before{content:'';position:absolute;right:-5px;bottom:0;width:180px;height:100px;background:url('./assets/illustrated-v2/botanical-header.png') center/contain no-repeat;opacity:.22;filter:sepia(1) brightness(1.7)}.feature-art.civic-feature>svg{width:180px;height:180px}.sidebar .place-title{font-size:44px;margin:0 0 9px}.place-mood{font:italic 22px/1.25 'Libre Caslon Display',Georgia,serif;color:#f6efd8;margin:10px 0 18px}.gold-rule{width:48px;height:2px;background:#d9b768;margin:20px 0}.feature-copy{font:22px/1.3 'Libre Caslon Display',Georgia,serif;margin:0 0 25px;color:#faf6e5}.feature-address{font-size:11px;line-height:1.7;margin-top:18px;color:#f1eddb}.access-note{font-size:10px;line-height:1.7;color:#c3d0b7;margin-top:16px}.source-details{font-size:9px;line-height:1.8;color:#a9c0a4;border-top:1px solid #97a67b40;padding-top:12px;margin-top:17px}.source-details summary{cursor:pointer;color:#d7cb9c}.source-details p{margin-top:10px}.source-details a{color:#d5c485}
.layer-stack{border-top:1px solid #8b9e7450}.layer-row{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #8b9e7450;cursor:pointer}.layer-number{font:10px Georgia,serif;color:#d6bc79;border:1px solid #81946d;border-radius:50%;width:25px;height:25px;display:grid;place-items:center;flex-shrink:0}.layer-row strong{font-size:11px;font-weight:500;display:block;color:#f1edcf}.layer-row small{font-size:9px;line-height:1.6;color:#a7bd9b;display:block;margin-top:4px}.layer-row input{width:16px;height:16px;margin-left:auto;accent-color:#d9b465;cursor:pointer;flex-shrink:0}.landmark-directory{display:flex;flex-direction:column}.landmark-directory button{display:flex;gap:10px;align-items:center;text-align:left;border-bottom:1px solid #89a17a40;padding:10px 0;font-size:11px;color:#f1edcf}.landmark-directory button>span:first-child{width:38px;height:42px;color:#d9ce9a;flex-shrink:0}.landmark-directory svg{width:100%;height:100%}.landmark-directory small{display:block;font-size:9px;color:#9fb699;margin-top:5px}.cell-info{background:#1b5146;color:#d9e0c4}.cell-info strong{color:#f3e5b7}.grid-visual button{background:#4b7056;border-color:#81936b;color:#e4dfb7}.grid-visual button.has-road{border-top-color:#d9b46a}.grid-visual button.selected{background:#d2ac5d;color:#183e35}
.footer{padding:24px 3%;justify-content:center;gap:24px;font:13px Georgia,serif;letter-spacing:3px;color:#264c3e}.footer-line{height:1px;max-width:130px;flex:1;background:#b59a58}.footer button{font:9px 'DM Sans',sans-serif;letter-spacing:0;margin-left:auto}.maplibregl-ctrl-attrib{background:#f7f1dcdb!important;color:#697253!important}.maplibregl-ctrl-scale{background:#f7f1dcdb!important;color:#4e654b!important}.map-loading{background:#d4dbb5;border-radius:20px}
.expanded .explorer,.embedded .explorer{gap:0}.expanded .map-shell,.embedded .map-shell,.expanded .sidebar,.embedded .sidebar{border-radius:0}.map-details{z-index:4}
@media(min-width:1600px){.sidebar{width:390px}#sidebar-content{padding:30px 35px}.intro{height:220px}.explorer{height:calc(100vh - 350px)}.community-feature-art{height:155px}.community-feature-art svg{width:155px;height:155px}.filter-group button{padding:9px 19px}}
@media(max-width:1150px){.sidebar{width:315px}#sidebar-content{padding:22px}.intro h1{font-size:45px}.intro{height:190px}.botanical-header{width:480px;height:190px}.intro-subtitle{font-size:21px}.explorer{margin:0 18px;gap:12px;min-height:640px}.filter-group{gap:6px}.filter-group button{padding:8px 10px}.filter-group button span{font-size:14px}.map-top{left:15px;right:15px}.community-heading h2{font-size:35px}.community-marker.is-current .marker-label{font-size:19px;padding:12px 23px}.grid-link{display:none}.sidebar .place-title{font-size:39px}.footer{font-size:10px;letter-spacing:2px}}
@media(max-width:800px){.masthead{height:63px;padding:0 5%;gap:14px}.brand{font-size:22px}.masthead nav{gap:14px}.masthead nav button{font-size:9px}.preview-label{display:none}.intro{height:218px;min-height:0;padding:24px 6%;display:block}.intro .eyebrow{font-size:10px;letter-spacing:3px;margin-bottom:13px}.intro h1{font-size:40px;line-height:1.02;max-width:410px}.intro-subtitle{font-size:20px;margin:14px 0 0;max-width:350px;line-height:1.25}.botanical-header{width:360px;height:150px;right:-80px;top:20px;opacity:.28}.intro-copy:before{display:none}.intro>p.edition-name{display:none}.explorer{margin:0 12px;flex-direction:column;height:auto;min-height:0;max-height:none;gap:14px}.map-shell{order:1;min-height:560px;border-radius:15px}.sidebar{order:2;width:100%;max-height:750px;min-height:500px;border-radius:15px}.sidebar-tabs{gap:30px;height:49px}.sidebar .community-copy{font-size:21px}.community-heading h2{font-size:43px}.community-feature-art{height:125px;margin-bottom:19px}.community-feature-art svg{width:125px;height:125px}.map-top{top:13px;left:10px;right:10px;gap:8px}.filter-group{gap:5px;min-width:0;flex:1;overflow-x:auto;scrollbar-width:none}.filter-group button{padding:7px 10px;min-height:32px;border-radius:12px;flex-shrink:0}.filter-group button span{font-size:12px}.map-top>.icon-button{width:30px;height:33px;flex-shrink:0}.map-controls{top:70px;right:10px}.map-bottom{left:11px;right:11px;bottom:35px;gap:7px}.layer-launch{font-size:14px;padding:10px 8px;gap:4px}.layer-launch span{font-size:9px}.pilot-button{padding:9px;gap:6px;max-width:215px}.pilot-button>span:nth-child(2){font-size:7px}.pilot-button small{font-size:8px}.pilot-icon{font-size:19px}.beacon,.beacon svg{width:50px;height:50px}.community-marker.is-current .beacon,.community-marker.is-current .beacon svg{width:65px;height:65px}.marker-label{font-size:13px;padding:8px 18px}.community-marker.is-current .marker-label{font-size:17px;padding:11px 21px}.landmark-illustration,.landmark-illustration svg{width:52px;height:57px}.landmark-tower .landmark-illustration,.landmark-tower .landmark-illustration svg{width:48px;height:75px}.place-symbol{width:36px;height:36px}.place-symbol svg{width:26px;height:26px}.place-symbol:after{left:13px;bottom:-10px}.landmark-name{font-size:10px}.feature-art{height:180px}.sidebar .place-title{font-size:44px}.feature-copy{font-size:24px}.footer{font-size:9px;line-height:1.8;letter-spacing:1.4px;flex-wrap:wrap;gap:12px;padding:22px 18px}.footer-line{max-width:22px}.footer button{margin:0;flex-basis:100%}.expanded .explorer,.embedded .explorer{flex-direction:column}.expanded .map-shell,.embedded .map-shell{height:100dvh;min-height:0;order:0}.expanded .sidebar.mobile-open,.embedded .sidebar.mobile-open{order:1;background:#0c403c;max-height:78dvh;height:78dvh;min-height:0}.expanded .close-details,.embedded .close-details{background:#164c40;color:#e3dab8;border-color:#728b6655}.expanded .map-details,.embedded .map-details{bottom:100px;font-size:10px;padding:11px 14px}.sidebar .detail-stats{margin:17px 0}}
@media(max-width:380px){.brand{font-size:20px}.brand svg{width:24px}.masthead nav{gap:9px}.masthead nav button{font-size:8px}.intro h1{font-size:36px}.intro{height:218px}.intro-subtitle{font-size:19px}.pilot-button{max-width:185px}.pilot-button>span:last-child{display:none}.map-bottom{gap:6px}}

/* Labels float beside fixed-size symbols, leaving the geographic anchor unchanged. */
.poi-marker{width:43px;height:43px;flex:none}.place-marker-label{position:absolute;left:calc(100% + 5px);top:8px;width:max-content;max-width:145px;margin:0;pointer-events:none}.place-symbol{flex:none}.outdoor-marker{width:50px;height:54px}.landmark-name{position:absolute;top:100%;left:50%;transform:translateX(-50%);pointer-events:none}.sidebar .community-feature-art{height:125px;margin-bottom:17px}.community-feature-art svg{width:125px;height:125px}.sidebar .detail-stats{margin-top:24px;margin-bottom:12px}.sidebar .community-copy{margin:18px 0 24px}.community-feature-art+.eyebrow{font-size:9px}
@media(max-width:800px){.poi-marker{width:36px;height:36px}.outdoor-marker{width:50px;height:54px}.sidebar .community-feature-art{height:125px}.place-marker-label{font-size:13px;max-width:120px}.place-symbol:after{bottom:-10px}}

.feature-art.civic-feature{color:#53684a}.feature-art img{width:100%;height:100%;object-fit:contain;position:relative;z-index:1}.feature-art.coffee-art:before{display:none}

/* The Legends local edit keeps factual notes close to the places they describe. */
.guide-title{font:31px/1.1 'Libre Caslon Display',Georgia,serif;color:#fff4d9;margin:13px 0}.guide-stops{margin:12px 0}.guide-stops button{display:flex;align-items:center;text-align:left;gap:10px;width:100%;padding:12px 0;border-bottom:1px solid #83986d40;color:#f3e8c9;font:16px 'Libre Caslon Display',Georgia,serif}.guide-stops button>span:last-child{margin-left:auto;color:#d2b86e}.guide-stops small{display:block;font:9px/1.8 'DM Sans',sans-serif;color:#a9bda0;margin-top:3px}.local-mini{color:#dfc681;display:block;width:33px;height:36px;flex-shrink:0}.local-mini svg{width:100%;height:100%}.amenities-guide{margin:22px 0;border:1px solid #a2a17370;border-radius:5px;padding:15px}.amenities-guide summary{display:flex;justify-content:space-between;gap:5px;cursor:pointer;font:18px 'Libre Caslon Display',Georgia,serif;color:#e7d7a9}.amenities-guide article{padding-top:18px}.amenities-guide h4{font-size:13px;font-weight:500;margin:0 0 8px;color:#f4e9ca}.amenities-guide p{font-size:11px;line-height:1.7;color:#cbd7b6}.amenities-guide small{display:block;font-size:10px;line-height:1.7;color:#adc3a3}.amenities-guide a{display:inline-block;font-size:9px;color:#dac485;margin-top:9px}.business-filters{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0}.business-filters button{font-size:10px;border:1px solid #8b9b7044;border-radius:12px;padding:7px 10px;color:#cbd8b5}.business-filters button.selected{background:#d8bd77;color:#183e35;border-color:#e2cf92}

/* Compact, individually drawn emblems remain visible when the wider atlas opens. */
.map-overview .community-marker:not(.is-current) .beacon,.map-overview .community-marker:not(.is-current) .beacon svg{width:38px;height:38px}.map-overview .community-marker:not(.is-current) .marker-label{position:absolute;top:100%;opacity:0;pointer-events:none;font-size:13px;padding:7px 17px}.map-overview .community-marker:not(.is-current):hover,.map-overview .community-marker:not(.is-current):focus-visible{z-index:7}.map-overview .community-marker:not(.is-current):hover .marker-label,.map-overview .community-marker:not(.is-current):focus-visible .marker-label{opacity:1}.map-overview .landmark-illustration,.map-overview .landmark-illustration svg{width:44px;height:48px}.map-overview .landmark-tower .landmark-illustration,.map-overview .landmark-tower .landmark-illustration svg{width:40px;height:64px}
.map-shell:not(.map-detailed) .community-marker:not(.is-current) .marker-label{position:absolute;top:100%;opacity:0;pointer-events:none;font-size:13px;padding:8px 18px}.map-shell:not(.map-detailed) .community-marker:not(.is-current):hover,.map-shell:not(.map-detailed) .community-marker:not(.is-current):focus-visible{z-index:7}.map-shell:not(.map-detailed) .community-marker:not(.is-current):hover .marker-label,.map-shell:not(.map-detailed) .community-marker:not(.is-current):focus-visible .marker-label{opacity:1}
/* A fixed emblem box anchors every signature to its source point; labels float outside. */
.community-marker{width:65px;height:65px}.community-marker.is-current{width:84px;height:84px}.community-marker .marker-label{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:4px}.community-marker .beacon{background:radial-gradient(circle,#fff7dc60,transparent 70%)}.map-overview .community-marker:not(.is-current){width:38px;height:38px}.map-wide .community-marker:not(.is-current),.map-wide .community-marker:not(.is-current) .beacon,.map-wide .community-marker:not(.is-current) .beacon svg{width:27px;height:27px}.map-wide .community-marker:not(.is-current):hover .beacon,.map-wide .community-marker:not(.is-current):focus-visible .beacon{transform:scale(1.35)}
@media(max-width:800px){.community-marker{width:50px;height:50px}.community-marker.is-current{width:65px;height:65px}.map-overview .community-marker:not(.is-current){width:38px;height:38px}.map-wide .community-marker:not(.is-current){width:27px;height:27px}}
.map-shell:not(.map-overview) .community-marker:not(.is-current),.map-shell:not(.map-overview) .community-marker:not(.is-current) .beacon,.map-shell:not(.map-overview) .community-marker:not(.is-current) .beacon svg{width:50px;height:50px}.map-detailed .community-marker:not(.is-current) .marker-label{font-size:14px;padding:9px 20px}

/* The growing catalogue stays local to the selected community. */
.catalogue-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center;margin:18px 0 10px}.catalogue-controls label{font-size:11px;color:#cbd8b5}.catalogue-controls select{width:100%;min-width:0;border:1px solid #829b7359;background:#19483f;color:#ebdfbc;border-radius:5px;padding:10px 6px;font-size:11px}.catalogue-controls .search{grid-column:1/-1;margin:0}.catalogue-count{margin:14px 0}.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}.nearby-groups section{border-bottom:1px solid #b4a46c29;padding:12px 0}.nearby-heading{display:flex;justify-content:space-between;gap:12px;width:100%;text-align:left;color:#ead6a3;font:20px 'Libre Caslon Display',Georgia,serif;padding:5px 0}.nearby-heading span{font:16px Georgia,serif;color:#d1b66d}.nearby-groups .guide-stops{margin:5px 0}.nearby-groups .guide-stops button{padding:10px 0}

/* Screen-spaced markers: quiet at distance, individual artwork up close. */
#map .atlas-marker{width:var(--hit-size);height:var(--hit-size);display:grid;place-items:center;border:0;padding:0;border-radius:50%;background:none;box-shadow:none;filter:none;color:#95712d;cursor:pointer;user-select:none;-webkit-user-select:none}
#map .atlas-marker>*{pointer-events:none}
#map .atlas-symbol{display:grid;place-items:center;width:var(--marker-size);height:var(--marker-size);border-radius:50%;background:radial-gradient(circle,#fff8e2e6 30%,#fff8e233 68%,transparent 72%);filter:drop-shadow(0 1px 0 #fff9e3);transition:filter .15s}
#map .atlas-symbol svg{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}
#map .poi-marker:not(.outdoor-marker) .atlas-symbol{padding:5px;background:#b18c3b;color:#fff8df;border:1px solid #fff5d5;box-shadow:0 0 0 1px #9e803d44}
#map .landmark-marker .atlas-symbol,#map .outdoor-marker .atlas-symbol{color:#285644}
#map .atlas-dot{display:block;width:var(--marker-size);height:var(--marker-size);border-radius:50%;background:#a88942;border:1.5px solid #fff6db;box-shadow:0 1px 3px #264b4233}
#map .atlas-marker.is-selected .atlas-symbol{background:#fff5d9dd;box-shadow:0 0 0 2px #ba944d88,0 0 0 6px #fff6d77a}
#map .atlas-marker.poi-marker.is-selected:not(.outdoor-marker) .atlas-symbol{background:#b18c3b}
#map .atlas-label{position:absolute;top:calc(50% + var(--marker-size)/2 + 6px);left:50%;transform:translateX(-50%);display:none;opacity:1;width:max-content;max-width:var(--label-width);padding:5px 9px;margin:0;border:1px solid #baa36a99;border-radius:4px;background:#fff9eaf5;box-shadow:0 2px 6px #254b3e18;color:#21483c;font:14px/1.15 'Libre Caslon Display',Georgia,serif;letter-spacing:0;text-transform:none;text-align:center;white-space:normal}
#map .atlas-marker.show-label .atlas-label,#map .atlas-marker:hover .atlas-label,#map .atlas-marker:focus-visible .atlas-label{display:block}
#map .atlas-marker:focus-visible{outline:2px solid #164f47;outline-offset:4px}
#map .atlas-marker:hover,#map .atlas-marker:focus-visible{z-index:4!important}
.map-shell.is-moving #map .atlas-label{display:none}
.map-shell.is-moving #map .atlas-symbol,.map-shell.is-moving #map .atlas-dot{filter:none;box-shadow:none}
.map-shell.is-moving #map,.map-shell.is-moving #map .atlas-marker{cursor:grabbing}
.more-communities{width:100%;padding:17px 0;text-align:center}

#map .atlas-label{max-height:44px;overflow:hidden;overflow-wrap:anywhere}

/* On-demand place previews keep every original marker geographically fixed. */
#map .dot-preview{position:absolute;bottom:calc(50% + var(--hit-size)/2 + 8px);left:50%;transform:translateX(calc(-50% + var(--preview-shift,0px)));width:156px;display:grid;justify-items:center;gap:6px;padding:12px 10px 10px;border:1px solid #bda56d;border-radius:9px;background:#fff9ea;box-shadow:0 5px 18px #204d3b30;color:#977230;pointer-events:none}
#map .dot-preview.below-dot{bottom:auto;top:calc(50% + var(--hit-size)/2 + 8px)}
#map .dot-preview-art,#map .dot-preview-art svg{display:block;width:48px;height:48px}
#map .dot-preview-name{font:16px/1.15 'Libre Caslon Display',Georgia,serif;color:#21483c;text-align:center;overflow-wrap:anywhere}
#map .atlas-marker.has-dot-preview .atlas-label{display:none}
#map .has-dot-preview .atlas-dot{box-shadow:0 0 0 4px #fff7dcbf,0 0 0 5px #ad8c4388}
.map-shell.is-moving #map .dot-preview{display:none}

#map .landmark-marker .dot-preview-art,#map .outdoor-marker .dot-preview-art{color:#285644}

/* Phone controls retain small artwork with generously spaced, invisible tap areas. */
#map .atlas-marker{touch-action:none}
@media(max-width:800px){
 .close-details{display:block;flex-shrink:0;min-height:48px;text-align:left;padding:13px 23px;background:#164c40;color:#e3dab8;border-bottom:1px solid #728b6655;font-size:12px}
 .map-top>.icon-button{width:44px;height:44px;flex-basis:44px}
 .filter-group button{min-height:44px}
 .map-controls{top:78px}
 .control-stack button,.control-button{width:44px;height:44px}
 .sidebar{scroll-margin-top:8px}
 .sidebar-tabs button{min-height:44px}
 .map-details{display:block;position:absolute;bottom:100px;left:12px;min-height:44px;padding:12px 15px;border-radius:5px;background:#164c40;color:#fff6dc;font-size:11px;box-shadow:0 3px 12px #254b3e22}
}

@media(max-width:380px){
 .map-top{align-items:flex-start}
 .filter-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
 .filter-group button{width:100%;padding:7px 8px}
 .map-controls{top:120px}
}
