.page-map{background:#f6f5f1}.map-page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding-block:38px 28px}.map-page-intro .eyebrow{font-size:10px;letter-spacing:.18em;margin-bottom:13px}.map-page-intro h1{font-size:clamp(35px,4vw,54px);font-weight:500;letter-spacing:-.045em;line-height:1.1;margin:0}.map-page-intro>p{max-width:370px;font-size:13px;line-height:1.7;color:#647177;margin:0}
.page-map .camp-map-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:0;border-radius:12px;overflow:hidden;background:#14191d;border:1px solid #30383d;box-shadow:0 24px 65px #12202518;align-items:stretch}
.page-map .map-canvas-wrap{border-radius:0;position:relative;overflow:hidden;height:auto;top:auto;scroll-margin-top:90px;min-height:850px;isolation:isolate;background:#293138;order:0}
.page-map #camp-map{display:block;position:absolute;inset:0;width:100%;height:100%;min-height:0;touch-action:none;cursor:grab;background:#293138}
.page-map #camp-map:active{cursor:grabbing}.page-map #camp-map:focus-visible{outline:2px solid #c6f576;outline-offset:-3px}
#map-layer-image.is-raster{filter:grayscale(1) brightness(.45) contrast(1.25)}
.map-pin{outline:none}.map-pin .pin-base{fill:#161c20;stroke:#d3dcdf;stroke-width:1.4}.map-pin .pin-symbol{fill:none;stroke:#f1f4f3;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.map-pin.is-selected .pin-base{fill:#c6f576;stroke:#c6f576}.map-pin.is-selected .pin-symbol{stroke:#172016}.map-pin:hover .pin-base,.map-pin:focus .pin-base{stroke:#c6f576;stroke-width:2.5}.map-pin:focus .pin-focus{stroke:#c6f576;stroke-width:1.3;fill:none}.pin-focus{stroke:none;fill:none}.map-pin-title{font:600 10px Arial,sans-serif;fill:#edf3f2;stroke:#14191d;stroke-width:4;paint-order:stroke;letter-spacing:1px}
.map-topbar{position:absolute;z-index:3;left:18px;right:18px;top:18px;display:flex;justify-content:space-between;align-items:center;gap:12px;pointer-events:none}.page-map .map-modes{position:static;display:flex;gap:3px;background:#14191de8;padding:4px;border:1px solid #64707855;border-radius:5px;pointer-events:auto}.page-map .map-modes button,.map-styles button{font-size:11px;font-weight:500;padding:8px 13px;border:0;border-radius:3px;background:none;color:#b6c0c5;cursor:pointer;white-space:nowrap}.page-map .map-modes button[aria-pressed=true],.map-styles button[aria-pressed=true]{background:#edf2ed;color:#192127}.map-region{font-size:9px;letter-spacing:.2em;color:#e6ecee;text-shadow:0 2px 5px #000;margin-right:7px}.map-compass{position:absolute;right:25px;top:83px;display:flex;flex-direction:column;align-items:center;color:#edf2ed;z-index:2;filter:drop-shadow(0 1px 3px #0008)}.map-compass span{font-size:10px;font-weight:700}.map-compass svg{width:25px;height:33px}
.page-map .map-tools{position:absolute;top:auto;left:auto;right:18px;bottom:103px;display:flex;flex-direction:column;gap:3px;z-index:3}.page-map .map-tools button{border:1px solid #65757c66;border-radius:4px;background:#14191de8;color:#eef2ef;width:38px;height:38px;padding:0;font-size:22px;cursor:pointer}.page-map .map-tools button:hover{background:#303c44}.page-map .map-tools button:last-child{font-size:20px}
.map-bottom{position:absolute;z-index:3;left:18px;right:18px;bottom:42px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.map-styles{display:flex;gap:3px;padding:4px;background:#14191de8;border:1px solid #64707855;border-radius:5px}.map-scale{color:#eff3ef;font-size:10px;text-align:center;text-shadow:0 2px 3px #000}.map-scale i{display:block;width:85px;border:1px solid #e2e9e6;border-top:0;height:5px;margin-top:5px}.map-drag-hint{position:absolute;bottom:14px;left:20px;color:#bdc9cc;font-size:9px;letter-spacing:.02em;margin:0}.page-map .map-attribution{position:absolute;bottom:0;right:0;left:auto;padding:2px 5px;background:#12171bcc;color:#9fadb2;font-size:8px;z-index:3}.map-attribution a{color:inherit}
.page-map .map-sidebar{order:1;border-radius:0;background:#1b2227;color:#e9f0ed;padding:22px 0 0;min-width:0;border-left:1px solid #46545a66}.map-sidebar-head{padding:0 20px 17px;display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid #ffffff0c}.map-sidebar-head .eyebrow{font-size:9px;letter-spacing:.14em;color:#aab9bd;margin:0}.page-map .map-all{font-size:10px!important;color:#c6f576;border:0;padding:0;background:none;text-decoration:none;display:flex;align-items:center;gap:5px;cursor:pointer}.map-all .arrow{width:12px;height:12px}
.page-map .map-places{display:flex;flex-direction:column;gap:1px;padding:9px 10px;margin:0}.page-map .map-sidebar .map-places button{display:flex;align-items:center;gap:12px;margin:0;padding:10px 12px;border:1px solid transparent;border-radius:4px;background:none;color:#cbd6da;font-size:11px!important;line-height:1.4;text-align:left;width:100%;cursor:pointer;min-height:42px}.map-places button>svg{width:21px;height:21px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.map-places button>span{flex:1}.map-places button>small{font:9px monospace;color:#7d929b}.page-map .map-places button:hover{background:#ffffff09;color:white}.page-map .map-places button[aria-pressed=true]{background:#c6f576;color:#172016}.page-map .map-places button[aria-pressed=true]>small{color:#435936}
.map-route-block{padding:15px 20px 18px;border-top:1px solid #ffffff12}.page-map .map-sidebar h2{font-size:15px;font-weight:500;letter-spacing:-.02em;margin:0 0 12px}.page-map .map-routes{display:grid;grid-template-columns:1fr;gap:5px;margin:0}.page-map .map-routes button{background:#ffffff05;color:#cbd6da;border:1px solid #63707866;border-radius:4px;padding:9px 10px;text-align:left;font-size:11px;cursor:pointer}.page-map .map-routes button:before{content:'';display:inline-block;width:5px;height:5px;background:#bb8cf0;border-radius:50%;margin-right:9px}.page-map .map-routes button[aria-pressed=true]{border-color:#b993e7;background:#ac85df18;color:#e7d5ff}.map-selected{background:#131a1f;padding:20px;border-top:1px solid #35424b}.map-selection-type{display:block;color:#8b9ea6;font-size:8px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:9px}.page-map #map-description{margin:0;border:0;padding:0;min-height:90px}.page-map #map-description strong{font-size:15px;color:#fff;font-weight:500;line-height:1.4;display:block}.page-map #map-description p{font-size:11px;line-height:1.7;color:#a8b9c0;margin:10px 0 14px}.page-map #map-external{display:flex;align-items:center;gap:12px;font-size:10px;color:#c6f576;line-height:1.5}.page-map #map-external svg{width:13px;height:13px}.page-map .map-caption{padding-block:20px 40px;display:flex;justify-content:space-between;gap:30px}.page-map .map-caption p{font-size:11px;line-height:1.7;max-width:680px;margin:0;color:#6b7778}.page-map .map-caption>a{font-size:12px;flex:none}.map-route-label{font:600 11px Arial,sans-serif;fill:#f1e9ff;stroke:#14191d;stroke-width:5;paint-order:stroke}.map-route-arrow{fill:none;stroke:#eee3ff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
@media(max-width:1100px){.page-map .camp-map-layout{grid-template-columns:minmax(0,1fr) 290px}.map-page-intro>p{max-width:310px}.page-map .map-canvas-wrap{min-height:890px}.map-region{display:none}}
@media(max-width:760px){.map-page-intro{display:block;padding-block:28px 23px}.map-page-intro h1{font-size:36px}.map-page-intro>p{font-size:12px;line-height:1.6;margin-top:14px;max-width:none}.page-map .camp-map-layout{display:flex;flex-direction:column;width:calc(100% - 24px);border-radius:9px}.page-map .map-canvas-wrap{height:580px;min-height:580px;flex:none}.page-map .map-sidebar{border:0;border-top:1px solid #46545a66;padding-top:18px}.page-map .map-places{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:10px}.page-map .map-sidebar .map-places button{font-size:10px!important;gap:8px;padding:10px 8px;min-height:52px}.map-places button>small{display:none}.map-places button>svg{width:20px;height:20px}.page-map .map-routes{grid-template-columns:repeat(3,minmax(0,1fr))}.page-map .map-routes button{font-size:10px!important;line-height:1.5;padding:10px 6px;text-align:center}.page-map .map-routes button:before{display:none}.map-topbar{top:12px;left:12px;right:12px}.page-map .map-modes button,.map-styles button{font-size:10px;padding:8px 12px}.map-compass{right:20px;top:70px}.map-bottom{left:12px;right:12px;bottom:42px}.page-map .map-tools{right:12px;bottom:100px}.map-drag-hint{left:14px;font-size:8px;bottom:18px}.page-map .map-caption{display:block;padding-block:18px 30px}.page-map .map-caption>a{margin-top:18px;display:inline-flex}.page-map #map-description{min-height:0}.map-selected{padding:20px}.map-scale i{width:65px}}
@media(prefers-reduced-motion:reduce){.map-pin{transition:none}}
