/* Preserve the approved artwork and blend its edges into the still landscape. */
.atlas-page:not(.content-mode) .site-header{overflow:visible;background:transparent;margin-bottom:-22px;mask-image:linear-gradient(#000 0%,#000 76%,#000d 86%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 76%,#000d 86%,transparent 100%)}
.atlas-page:not(.content-mode) .site-header::before{display:none}
.atlas-page:not(.content-mode) .title-brand{width:min(100%,840px,72dvh);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.atlas-page:not(.content-mode) .title-brand img{width:100%;height:auto;max-height:none;object-fit:initial}
#map-viewport{touch-action:none;contain:layout paint;scroll-behavior:auto;overflow-anchor:none;scrollbar-width:none}
#map-viewport::-webkit-scrollbar{display:none}
#map-stage{transform-origin:0 0;transition:none}
/* Keep both scenes mounted at stable viewport dimensions. Route changes reveal
   the prepared map without rebuilding its layout or changing its camera basis. */
body.atlas-page,body.atlas-page.content-mode{position:fixed;inset:0;width:100%;height:100dvh;min-height:0;overflow:hidden;display:block}
#home-map{position:fixed;top:calc(min(100vw,840px,72dvh)/3 + 58px);bottom:0;left:0;width:100vw;min-height:0;z-index:1}
#platform-view,body.content-mode #platform-view{display:block;position:fixed;top:90px;bottom:0;left:0;width:100vw;min-height:0;padding:0 0 125px;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;overflow-anchor:none;background:var(--paper);color:var(--ink);color-scheme:light;z-index:3;opacity:0;pointer-events:none;contain:layout paint;transition:none}
body.content-mode #platform-view{opacity:1;pointer-events:auto}
.nav-scope,.selection{display:none!important}
#map-viewport{overflow:clip;mask-image:linear-gradient(transparent,#000 22px,#000 calc(100% - 8px),transparent);-webkit-mask-image:linear-gradient(transparent,#000 22px,#000 calc(100% - 8px),transparent)}
.content-mode .host-wizard-sidebar{top:18px}
@media(max-width:700px){#home-map{top:calc(min(100vw,840px,72dvh)/3 + 53px)}#platform-view,body.content-mode #platform-view{top:76px}}
/* Keep the map's tile edges; avoid a whole-country offscreen blur at every scale. */
#map{filter:none}
#map .map-hit-area:focus-visible{stroke:#fff5ce!important;stroke-width:2;vector-effect:non-scaling-stroke;filter:none!important}
.main-navigation button,.title-brand,.transport-legend button{touch-action:manipulation}
.nav-item.active{transition:none}
/* Keep the still landscape ready behind the opaque content pages. */
.content-mode>.world{display:block}
.platform-actions{left:22px;justify-content:space-between;pointer-events:none}
.platform-actions>*{pointer-events:auto}
.content-mode .site-header{background:linear-gradient(120deg,#071e2a,#103d3b);border-bottom:0}
.content-mode .platform-actions{left:max(24px,calc((100vw - 1200px)/2))}
.content-mode .title-brand{width:min(44vw,255px);margin:0 auto}
@media(min-width:701px){.platform-ready:not(.content-mode) .platform-actions{left:3vw}}
@media(max-width:700px){.platform-actions{left:11px}.platform-actions .login-control{max-width:100px}.platform-actions .login-control>span:last-child{max-width:65px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content-mode .platform-actions{left:12px}.content-mode .title-brand{width:min(172px,max(90px,calc(100vw - 236px)));margin:0 auto}}
.transport-layer{position:absolute;inset:0;pointer-events:none;z-index:4}
.transport-pin{position:absolute;pointer-events:auto;transform:translate(-50%,-50%) scale(var(--transport-counter-scale,1));display:flex;align-items:center;justify-content:center;gap:1px;width:18px;height:18px;padding:2px;border:1px solid #f7edc799;border-radius:50%;background:#f6e4b8;color:#173e38;box-shadow:0 1px 3px #001d2866}
.transport-pin::before{content:"";position:absolute;inset:-5px;border-radius:50%}
.transport-pin.port{background:#0e7182;color:#e9fffb;border-color:#b3e6da}
.transport-pin.mixed{width:24px;border-radius:9px;background:#eef0cd}
.transport-pin svg{width:12px;height:12px;flex-shrink:0}.transport-pin.mixed svg{width:9px;height:9px}
.transport-pin b{position:absolute;right:-3px;top:-4px;width:10px;height:10px;display:grid;place-items:center;border:1px solid #b9d4b5;border-radius:50%;background:#123e35;color:#fff6dc;font:6px Arial}
.transport-pin:hover,.transport-pin:focus-visible{box-shadow:0 0 0 4px #e8f4bc44,0 3px 8px #001d2880;z-index:2}
.transport-legend{position:absolute;bottom:99px;left:18px;z-index:6;display:flex;gap:5px;padding:4px;border-radius:22px;border:1px solid #d7e6bd44;background:#082e32e8;box-shadow:0 5px 18px #001c2940}
.transport-legend button{display:flex;align-items:center;gap:6px;border:0;border-radius:20px;padding:9px 10px;background:transparent;color:#b7cdbb;font:11px Arial;min-height:36px}
.transport-legend button[aria-pressed=true]{background:#e8edce;color:#234e3e}
.transport-legend svg{width:15px;height:15px}.transport-legend b{font-size:9px;opacity:.65}
.transport-dialog{background:#faf9ee;color:#214b3b;border:1px solid #d6e0cb;border-radius:22px;padding:33px;width:560px;max-width:calc(100vw - 24px);max-height:88dvh;overflow:auto;color-scheme:light}
.transport-dialog::backdrop{background:#052b32ad;backdrop-filter:blur(5px)}
.transport-dialog .transport-close{position:absolute;display:grid;place-items:center;width:40px;height:40px;right:12px;top:12px;border:1px solid #d9e0cb;border-radius:50%;background:#eff2e2;color:#214b3b}
.transport-close svg{width:17px;height:17px}
.transport-dialog .transport-eyebrow{font:700 9px Arial;letter-spacing:1.5px;padding:0;color:#6e805e;margin:8px 35px 16px 0}
.transport-dialog h2{font:31px/1.2 Georgia,serif;margin:0 0 25px}
.transport-hubs article{display:flex;gap:15px;padding:20px 0;border-top:1px solid #dee4d2}
.hub-mark{width:39px;height:39px;border:1px solid #d9dfc5;border-radius:12px;padding:8px;background:#e9edda;flex-shrink:0}.hub-mark svg{width:100%;height:100%}
.transport-hubs span{font:10px Arial;color:#748466}.transport-hubs h3{font:23px Georgia,serif;margin:9px 0}
.transport-hubs p{font:14px/1.8 Arial;margin:10px 0 15px;padding:0;color:#546d50;max-width:none}
.hub-links{display:flex;flex-wrap:wrap;gap:14px}.hub-links a{font:600 11px/1.8 Arial;color:#3c734f;text-decoration:underline;text-underline-offset:4px}
.transport-dialog .transport-note{font:11px/1.8 Arial;padding:16px 0 0;border-top:1px solid #dee4d2;color:#7a8b6b;margin:0;max-width:none}
@media(max-width:700px){.atlas-page:not(.content-mode) .site-header{margin-bottom:-15px}.transport-legend{left:12px;bottom:calc(78px + max(13px,env(safe-area-inset-bottom)));padding:3px;gap:4px}.transport-legend button{padding:8px;font-size:10px;min-height:35px}.transport-dialog{padding:28px 23px}.transport-dialog h2{font-size:27px}.transport-hubs article{gap:12px}.transport-hubs p{font-size:13px}}
