/* Scoped to the regional atlas; existing site typography and composition stay intact. */
.regional-horizon{min-width:0;max-width:100%;color:var(--sage)}
.horizon-scroll{overflow:auto;max-width:100%;direction:ltr;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--sage) transparent;outline-offset:4px}
.regional-horizon .horizon-map{display:block;width:100%;min-width:850px;height:auto;max-height:none;overflow:hidden;color:inherit;direction:ltr}
.horizon-mountains{fill:none;stroke:currentColor;opacity:.2}
.horizon-routes polyline{stroke-width:1.4;opacity:.4;transition:opacity .25s,stroke-width .25s}
.horizon-routes polyline.active{opacity:1;stroke-width:2.5}
.horizon-node{color:inherit;outline:none;cursor:pointer}
.horizon-hit{fill:transparent;stroke:none}
.horizon-dot{fill:currentColor}
.horizon-ring{fill:none;stroke:currentColor;opacity:0;transition:opacity .2s}
.horizon-node:hover .horizon-ring,.horizon-node:focus-visible .horizon-ring{opacity:1}
.horizon-node:hover,.horizon-node:focus-visible{color:var(--paper)}
.horizon-node text{font:20px var(--title);letter-spacing:.5px;fill:var(--paper);text-transform:uppercase;direction:ltr}
.horizon-leader{fill:none;stroke:currentColor;opacity:.4;stroke-width:.6}
.horizon-directions text{font:12px var(--body);letter-spacing:3px;fill:currentColor}
.horizon-pan{display:inline-flex;vertical-align:middle;margin-inline-start:10px}
.regional-horizon .horizon-pan svg{width:24px;height:24px;max-height:24px}
.atlas-terrain .vo-arrow{width:1em;height:1em;max-height:none;color:inherit}
.map-list-row{border-bottom:1px solid var(--line)}
.map-list-row>.map-list-item{border-bottom:0;width:100%}
.map-list-row>a{display:block;padding:0 12px 12px;text-decoration:underline;text-underline-offset:3px}
#map-list>a.map-list-item{display:block}
#region-map{direction:ltr}
.leaflet-popup-content{overflow-wrap:anywhere}
.leaflet-popup-content img{width:100%;max-height:160px;object-fit:cover}
@media(prefers-reduced-motion:no-preference){.regional-horizon.is-revealed .horizon-routes polyline{animation:horizon-route-reveal 1.8s var(--ease) both}@keyframes horizon-route-reveal{from{stroke-dasharray:1;stroke-dashoffset:1}to{stroke-dasharray:1;stroke-dashoffset:0}}}
@media(max-width:767px){.regional-horizon .horizon-map{min-width:850px}.map-list-row>a{min-height:44px}.regional-horizon .atlas-map-note{line-height:1.6}}
@media(min-width:1280px){.regional-horizon .horizon-map{min-width:0}.horizon-node text{font-size:22px}}

html[dir=rtl] .horizon-node text{direction:rtl;unicode-bidi:embed;letter-spacing:0;font-family:Arial,sans-serif}
