/* All application rules are scoped to this map section. */
.outing-map{margin:28px 0 40px;padding:clamp(16px,3vw,28px);border:1px solid var(--btp-line,#C7DFD1);border-radius:22px;background:#fffaf1;color:#10264D;min-width:0}
.outing-map *{box-sizing:border-box}
.outing-map [hidden]{display:none!important}
.outing-map .om-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.outing-map .om-heading h2{margin:4px 0 8px;font-size:clamp(1.625rem,4vw,2.25rem)}
.outing-map .om-heading p{margin:0;max-width:48ch}
.outing-map .om-eyebrow{font-size:0.8125rem;font-weight:800;letter-spacing:.14em;color:#0B1B38}
.outing-map button,.outing-map .om-list-link{min-height:44px;font:inherit;font-weight:700;cursor:pointer}
.outing-map button{border:1px solid #0B1B38;border-radius:999px;padding:10px 16px;background:#fffaf1;color:#0B1B38}
.outing-map button:hover{background:#D5F3E3}
.outing-map button:disabled{cursor:wait;opacity:.65}
.outing-map :is(button,a,summary):focus-visible{outline:3px solid #B8321D;outline-offset:3px}
.outing-map .om-list-link{display:inline-flex;align-items:center;color:#0B1B38;text-underline-offset:4px}
.outing-map .om-toolbar,.outing-map .om-filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.outing-map .om-toolbar{justify-content:space-between;margin-bottom:14px}
.outing-map .om-filter[aria-pressed=true],.outing-map .om-load{background:#10264D;color:white}
.outing-map .om-stage{position:relative;isolation:isolate;height:clamp(360px,65vh,500px);border:1px solid #d4d4c9;border-radius:16px;overflow:hidden;background:#e7edde}
.outing-map .om-placeholder{width:100%;height:100%;object-fit:cover;display:block}
.outing-map .om-canvas{position:absolute;inset:0}
.outing-map .om-load-panel{position:absolute;left:12px;right:12px;bottom:38px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:12px;background:#fffaf1f5;border-radius:12px;text-align:center;z-index:2}
.outing-map .om-static-credit{position:absolute;bottom:0;left:0;right:0;padding:5px 6px;background:#fffffff2;font:0.8125rem/1.5 Arial,sans-serif;color:#10264D}
.outing-map .om-static-credit a{color:#10264D}
.outing-map .om-load-note{font-size:0.8125rem;margin:0;max-width:27ch}
.outing-map .om-status{font-size:0.875rem;margin:14px 0 6px}
.outing-map .om-hint{font-size:0.8125rem;margin:0 0 16px;color:#45576A}
.outing-map .om-list{border-top:1px solid #C7DFD1;padding-top:12px;scroll-margin-top:120px}
.outing-map .om-list summary{min-height:44px;padding:10px 0;cursor:pointer;font-weight:700}
.outing-map .om-list ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;margin:8px 0 0;padding:0;gap:16px}
.outing-map .om-list li{padding:14px;border:1px solid #C7DFD1;border-radius:12px;display:flex;flex-direction:column;justify-content:space-between;gap:10px;min-width:0}
.outing-map .om-list h3{font-size:1.125rem;margin:4px 0 8px}
.outing-map .om-list a{color:#0B1B38;display:inline-block;padding:4px 0}
.outing-map .om-list p{font-size:0.875rem;margin:0;overflow-wrap:anywhere}
.outing-map .om-list .om-list-meta{font-size:0.8125rem;color:#45576A}
.outing-map .om-list-focus{align-self:flex-start;font-size:0.8125rem}
.outing-map .om-pin{width:44px;height:44px;min-height:44px;padding:0;border:0;background:transparent;display:grid;place-items:center;border-radius:50%}
.outing-map .om-pin:hover{background:transparent}
.outing-map .om-pin span{width:26px;height:26px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);border:3px solid white;box-shadow:0 2px 8px #10264D66;background:#10264D;display:grid;place-items:center}
.outing-map .om-pin span:after{content:'';width:6px;height:6px;background:white;border-radius:50%}
.outing-map .om-pin[data-category=Eat] span{background:#B8321D}
.outing-map .om-pin[data-category=Unwind] span{background:#10264D}
.outing-map .om-popup{z-index:4}
.outing-map .om-popup .maplibregl-popup-content{padding:18px 44px 16px 16px;border-radius:12px;background:#fffaf1;color:#10264D;font:0.875rem/1.45 var(--btp-font-body,Montserrat,sans-serif);box-shadow:0 8px 24px #10264D33}
.outing-map .om-popup h3{font-size:1.125rem;margin:4px 0 8px}
.outing-map .om-popup p{margin:0 0 8px;overflow-wrap:anywhere}
.outing-map .om-popup .om-popup-meta{font-size:0.8125rem;color:#45576A}
.outing-map .om-popup a{display:inline-flex;align-items:center;min-height:44px;color:#0B1B38;font-weight:700}
.outing-map .om-popup .maplibregl-popup-close-button{width:44px;height:44px;padding:0;border:0;border-radius:0 12px 0 0;font-size:1.375rem;color:#10264D}
@media(max-width:600px){.outing-map .om-popup{left:12px!important;right:12px!important;top:12px!important;bottom:auto!important;width:auto!important;max-width:none!important;transform:none!important}.outing-map .om-popup .maplibregl-popup-tip{display:none}.outing-map .om-popup .maplibregl-popup-content{max-height:340px;overflow:auto}}
.outing-map .maplibregl-ctrl-group button{width:44px;height:44px;border-radius:0;padding:0}
.outing-map .maplibregl-ctrl-attrib{max-width:calc(100% - 20px);font:0.8125rem/1.5 Arial,sans-serif;background:#fffffff2;color:#10264D;padding:4px 6px}
.outing-map .maplibregl-ctrl-attrib a{color:#10264D}
.outing-map .maplibregl-ctrl-attrib .maplibregl-ctrl-attrib-inner{display:block}
@media(max-width:600px){.outing-map .om-list ul{grid-template-columns:1fr}.outing-map .om-toolbar{align-items:flex-start}.outing-map .om-overview{font-size:0.8125rem}.outing-map .om-filter{font-size:0.8125rem;padding:10px 12px}.outing-map .om-heading{gap:8px}.outing-map .om-stage{height:390px}}

.outing-map .om-pin[data-category=Indoor] span{background:#5b4b8a}
:where(html[data-btp-theme="dark"]) .outing-map{border:1px solid var(--btp-line,var(--btp-control));background:var(--btp-surface);color:var(--btp-ink)}:where(html[data-btp-theme="dark"]) .outing-map .om-eyebrow{color:var(--btp-link)}:where(html[data-btp-theme="dark"]) .outing-map button{border:1px solid var(--btp-control);background:var(--btp-surface);color:var(--btp-link)}:where(html[data-btp-theme="dark"]) .outing-map button:hover{background:var(--btp-surface)}:where(html[data-btp-theme="dark"]) .outing-map :is(button,a,summary):focus-visible{outline:3px solid var(--btp-control)}:where(html[data-btp-theme="dark"]) .outing-map .om-list-link{color:var(--btp-link)}:where(html[data-btp-theme="dark"]) .outing-map .om-filter[aria-pressed=true],:where(html[data-btp-theme="dark"]) .outing-map .om-load{background:var(--btp-night);color:var(--btp-on-dark)}:where(html[data-btp-theme="dark"]) .outing-map .om-stage{border:1px solid var(--btp-control);background:var(--btp-surface)}:where(html[data-btp-theme="dark"]) .outing-map .om-load-panel{background:color-mix(in srgb, var(--btp-surface) 96.08%, transparent)}:where(html[data-btp-theme="dark"]) .outing-map .om-static-credit{background:color-mix(in srgb, var(--btp-surface) 94.90%, transparent);color:var(--btp-ink)}:where(html[data-btp-theme="dark"]) .outing-map .om-static-credit a{color:var(--btp-ink)}:where(html[data-btp-theme="dark"]) .outing-map .om-hint{color:var(--btp-ink)}:where(html[data-btp-theme="dark"]) .outing-map .om-list{border-top:1px solid var(--btp-control)}:where(html[data-btp-theme="dark"]) .outing-map .om-list li{border:1px solid var(--btp-control)}:where(html[data-btp-theme="dark"]) .outing-map .om-list a{color:var(--btp-link)}:where(html[data-btp-theme="dark"]) .outing-map .om-list .om-list-meta{color:var(--btp-ink)}:where(html[data-btp-theme="dark"]) .outing-map .om-pin span{border:3px solid var(--btp-control);box-shadow:0 2px 8px color-mix(in srgb, var(--btp-night) 40.00%, transparent);background:var(--btp-night)}:where(html[data-btp-theme="dark"]) .outing-map .om-pin span:after{background:var(--btp-surface)}:where(html[data-btp-theme="dark"]) .outing-map .om-pin[data-category=Eat] span{background:var(--btp-coral)}:where(html[data-btp-theme="dark"]) .outing-map .om-pin[data-category=Unwind] span{background:var(--btp-night)}:where(html[data-btp-theme="dark"]) .outing-map .om-popup .maplibregl-popup-content{background:var(--btp-surface);color:var(--btp-ink);box-shadow:0 8px 24px color-mix(in srgb, var(--btp-night) 20.00%, transparent)}:where(html[data-btp-theme="dark"]) .outing-map .om-popup .om-popup-meta{color:var(--btp-ink)}:where(html[data-btp-theme="dark"]) .outing-map .om-popup a{color:var(--btp-link)}:where(html[data-btp-theme="dark"]) .outing-map .om-popup .maplibregl-popup-close-button{color:var(--btp-ink)}:where(html[data-btp-theme="dark"]) .outing-map .maplibregl-ctrl-attrib{background:color-mix(in srgb, var(--btp-surface) 94.90%, transparent);color:var(--btp-ink)}:where(html[data-btp-theme="dark"]) .outing-map .maplibregl-ctrl-attrib a{color:var(--btp-ink)}:where(html[data-btp-theme="dark"]) .outing-map .om-pin[data-category=Indoor] span{background:var(--btp-surface-raised)}