
:root{--g:#174b3c;--deep:#10382d;--ink:#21382d;--muted:#607166;--gold:#a48143;--paper:#f4f7f1;--line:#dce4dc}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:90px}body{margin:0;background:white;color:var(--ink);font-family:"源泉黑體","GenSen Gothic","Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;font-size:18px;line-height:1.8}a{color:var(--g);text-underline-offset:5px}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.shell{max-width:1280px;margin:auto;padding:0 34px}.preview-bar{background:#ece6d8;color:#5c4a2a;text-align:center;font-size:14px;padding:7px 18px}.skip{position:absolute;top:-80px;background:var(--g);color:white;padding:12px;z-index:10}.skip:focus{top:0}
.header{border-bottom:1px solid var(--line)}.header-inner{min-height:87px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;line-height:1.5}.brand img{width:46px;height:46px;object-fit:contain}.brand strong{display:block;font-size:21px}.brand small{font-size:13px;letter-spacing:.07em;color:var(--muted)}.main-nav{display:flex;gap:26px;font-size:16px}.main-nav a{text-decoration:none}.hero{padding:65px 0 40px}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end}.eyebrow{font-size:13px;letter-spacing:.1em;color:var(--muted)}.hero .eyebrow{color:var(--gold);border-left:28px solid var(--gold);padding-left:14px;line-height:2px;margin:15px 0 25px}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(44px,5.3vw,68px);line-height:1.23;letter-spacing:-.04em;margin-bottom:25px}h2{font-size:35px;line-height:1.4;letter-spacing:-.025em;margin-bottom:15px}h3{font-size:25px;line-height:1.5;margin-bottom:17px}h4{font-size:16px;color:var(--g);margin-bottom:5px}p{margin-bottom:15px}.subtitle{font-size:22px;line-height:1.8}.hero-copy{border-left:2px solid var(--gold);padding-left:25px;color:var(--muted)}.hero-copy p:last-child{margin-bottom:0}.hero-counts{display:flex;gap:35px;border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.hero-counts strong{font-size:29px;font-weight:500;color:var(--g)}.hero-counts span{display:block;font-size:14px;color:var(--muted)}.baseline{display:flex;gap:25px;flex-wrap:wrap;margin-top:26px;font-size:15px;color:var(--muted)}.baseline strong{font-weight:500;color:var(--g)}
.section-nav{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.98);border-block:1px solid var(--line);overflow-x:auto;scrollbar-width:thin}.section-nav .shell{display:flex;gap:29px;white-space:nowrap}.section-nav a{font-size:16px;text-decoration:none;padding:16px 0}.section-nav a:hover{color:var(--gold)}section{padding:61px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:28px}.section-head>p{max-width:510px;margin:0;color:var(--muted)}.kicker{font-size:14px;letter-spacing:.12em;color:var(--gold);margin-bottom:10px}
.map-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,.8fr);gap:24px}.map-frame{border:1px solid var(--line);background:#f3f6f0;border-radius:5px;overflow:hidden}.map-label{display:flex;justify-content:space-between;gap:15px;padding:17px 21px 0;font-size:14px;color:var(--muted)}#corridor-map{display:block;width:100%;height:auto}.district{fill:#fff;stroke:#617568;stroke-width:2;stroke-dasharray:7 5}.district-label{font-size:40px;fill:#e3e9e0;letter-spacing:.12em;font-weight:700;text-anchor:middle}.road{fill:none;stroke:#d5dfd3;stroke-width:5;stroke-linecap:round}.axis-path{fill:none;stroke:var(--axis-color);stroke-width:11;stroke-linecap:round;stroke-linejoin:round;opacity:.7}.axis-map-item{cursor:pointer}.axis-map-item.dimmed{opacity:.2}.axis-map-item.active .axis-path{opacity:1;stroke-width:16}.axis-map-item circle{stroke:white;stroke-width:3}.axis-number{fill:white;text-anchor:middle;font-size:17px;font-weight:700}.road-label{font-size:16px;fill:#536a5c;paint-order:stroke;stroke:white;stroke-width:4;stroke-linejoin:round}.landmark{font-size:19px;fill:#324f40;font-weight:600;paint-order:stroke;stroke:#f3f6f0;stroke-width:4}.station{font-size:16px;fill:#4f675a;paint-order:stroke;stroke:white;stroke-width:4}.outside{font-size:20px;fill:#8b978f;letter-spacing:.1em}.cross{font-size:17px;fill:#8b7761}.small-label{font-size:15px;fill:#67786e}.map-foot{padding:0 20px 18px;font-size:15px;color:var(--muted);margin:0}
.spotlight{padding:30px;background:var(--deep);color:white;border-radius:5px;display:flex;flex-direction:column}.spotlight-number{font-size:70px;line-height:1;font-weight:300;color:#c8b17e;margin-bottom:25px}.spotlight h3{font-size:27px;color:white}.spotlight h4{color:#d4c098;font-size:15px;margin-top:15px}.spotlight p{color:#e0e8e1;margin-bottom:10px}.spotlight .range{font-size:16px;color:#c4d3c6}.spotlight a{color:#e4d5ac;font-size:16px;margin-top:auto;padding-top:15px}.axis-controls{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:19px 0}.axis-button{background:white;border:1px solid var(--line);padding:12px;cursor:pointer;min-height:60px;text-align:left;border-radius:3px;line-height:1.6;font-size:16px;color:var(--ink)}.axis-button span{display:block;font-size:13px;color:var(--gold)}.axis-button[aria-pressed=true]{background:var(--g);color:white;border-color:var(--g)}.axis-button[aria-pressed=true] span{color:#d7c093}.axis-button:hover{border-color:var(--g)}.map-disclaimer{font-size:16px;color:var(--muted);padding:15px 18px;border-left:3px solid var(--gold);background:#faf8f2}.axis-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}.axis-mini{border:1px solid var(--line);padding:23px;border-radius:4px}.axis-mini .num{font-size:14px;color:var(--gold)}.axis-mini h3{font-size:22px;margin:5px 0 12px}.axis-mini p{font-size:18px;color:var(--muted);margin-bottom:8px}.axis-mini .range{font-size:15px}
.projects,.resilience{background:#f8faf7}.filter-row{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:18px}.filter-button{border:1px solid var(--line);background:white;color:var(--g);padding:10px 17px;min-height:48px;cursor:pointer;border-radius:3px;font-size:16px}.filter-button[aria-pressed=true]{background:var(--g);border-color:var(--g);color:white}.filter-summary{font-size:16px;color:var(--muted);margin-bottom:22px}.project-grid,.existing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.project-card,.existing-card{background:white;border:1px solid var(--line);border-radius:5px;padding:29px;scroll-margin-top:90px}.card-top{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:17px}.status{display:inline-block;border:1px solid #d8dfd4;background:#f0f3ed;color:#425a45;border-radius:3px;font-size:14px;font-weight:500;line-height:1.6;padding:4px 10px}.measure{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:20px}.measure strong{display:block;font-size:36px;line-height:1.4;font-weight:600;color:var(--g)}.measure span{display:block;font-size:15px;color:var(--muted);margin-top:4px}.field{margin-bottom:18px}.project-card p{font-size:18px;margin-bottom:6px;line-height:1.8}.observe{padding:16px 18px;background:var(--paper);margin:18px 0}.limit{font-size:16px;color:#6b5a3e;border-left:2px solid #b59a62;padding-left:13px;margin:20px 0}.limit p{font-size:16px!important}
details{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer;min-height:52px;padding:13px 24px 13px 0;position:relative;font-size:16px;line-height:1.7;color:var(--g)}summary:after{content:"＋";position:absolute;right:1px;top:13px;color:var(--gold)}details[open]>summary:after{content:"−"}summary::-webkit-details-marker{display:none}.source-body{padding:4px 0 12px}.source-body a{display:block;font-size:16px;margin:8px 0;overflow-wrap:anywhere}.source-body p{font-size:14px!important;color:var(--muted);margin-top:14px}.existing-card h3{font-size:23px;margin:15px 0}.existing-key{font-size:22px;font-weight:600;color:var(--g)}
.status-guide{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:23px}.status-guide span{font-size:14px;padding:5px 11px;border:1px solid var(--line);background:white}.infra-list{border-top:1px solid var(--line)}.infra-row{display:grid;grid-template-columns:55px 1fr 1.4fr;gap:26px;padding:30px 0;border-bottom:1px solid var(--line);align-items:start}.infra-number{font-size:28px;color:var(--gold);line-height:1.4;font-weight:300}.infra-heading h3{font-size:24px;margin:13px 0}.infra-heading p{font-size:19px;color:var(--g)}.infra-body p{margin-bottom:12px;font-size:18px}.infra-body .limit{margin-top:12px}.pop-panel{display:grid;grid-template-columns:1fr 1fr 1.15fr;border-block:1px solid var(--line);margin-top:25px}.pop-cell{padding:30px 27px}.pop-cell+.pop-cell{border-left:1px solid var(--line)}.pop-cell strong{font-size:45px;line-height:1.3;color:var(--g);font-weight:500}.pop-cell strong span{font-size:21px}.pop-cell p{font-size:16px;color:var(--muted);margin:10px 0 0}.pop-cell .explain{font-size:18px;color:var(--ink)}
.analysis-cta{background:var(--deep);color:white;padding:55px;border-radius:5px;display:grid;grid-template-columns:1.3fr 1fr;gap:45px}.analysis-cta h2{color:white;font-size:34px}.analysis-cta .kicker{color:#dac69c}.analysis-cta p{color:#e1e9e2}.cta-side{display:flex;flex-direction:column;justify-content:center}.cta-button{display:flex;align-items:center;justify-content:center;gap:30px;min-height:62px;padding:16px 23px;background:#e6d6af;color:var(--deep);font-size:19px;font-weight:700;text-decoration:none}.cta-links{display:flex;gap:22px;flex-wrap:wrap;margin-top:18px}.cta-links a{color:#e5ede4;font-size:16px}.signature{font-size:18px;color:#dcca9d!important;margin:22px 0 0}
.sources-section{border-top:1px solid var(--line)}.sources-section h2{font-size:27px}.sources-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 30px}.source-entry{padding:16px 0;border-top:1px solid var(--line);min-width:0}.source-entry h3{font-size:16px;margin-bottom:7px}.source-entry a{display:block;font-size:15px;overflow-wrap:anywhere;margin:7px 0}.footer{padding:35px 0 45px;background:var(--paper);border-top:1px solid var(--line);font-size:15px;color:var(--muted)}.footer-grid{display:flex;justify-content:space-between;align-items:start;gap:25px}.footer p{margin-bottom:8px}.footer nav{display:flex;gap:22px;flex-wrap:wrap}[hidden]{display:none!important}.nojs{padding:12px;background:#faf8f2;font-size:16px}
@media(max-width:900px){.shell{padding-inline:24px}.hero-grid{grid-template-columns:1fr;gap:25px}.hero{padding-top:40px}.main-nav{gap:16px;font-size:15px}.map-layout{grid-template-columns:1fr}.spotlight{display:grid;grid-template-columns:70px 1fr;gap:0 20px}.spotlight-number{font-size:50px;grid-row:1/6}.spotlight h3,.spotlight h4,.spotlight p,.spotlight a{grid-column:2}.spotlight h3{margin-bottom:10px}.axis-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.axis-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.analysis-cta{padding:35px;grid-template-columns:1fr;gap:20px}.pop-panel{grid-template-columns:1fr 1fr}.pop-panel .pop-cell:last-child{grid-column:1/-1;border-left:0;border-top:1px solid var(--line)}.sources-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.infra-row{grid-template-columns:40px 1fr;gap:10px 18px}.infra-body{grid-column:2}.footer-grid{flex-direction:column}}
@media(max-width:600px){.shell{padding-inline:20px}.preview-bar{font-size:13px}.header-inner{min-height:77px}.brand strong{font-size:18px}.brand small{font-size:11px}.brand img{width:38px;height:38px}.main-nav a{display:none}.main-nav a:last-child{display:block;border:1px solid var(--line);padding:7px 10px;font-size:14px;white-space:nowrap}.hero{padding:32px 0}h1{font-size:43px;margin-bottom:22px;line-height:1.3}.subtitle{font-size:20px}.hero-copy{font-size:18px;padding-left:17px}.hero-counts{gap:25px;margin-top:22px;padding-top:17px}.hero-counts strong{font-size:26px}.hero-counts span{font-size:13px}.baseline{font-size:14px;gap:5px;margin-top:20px}.section-nav .shell{gap:22px}.section-nav a{font-size:15px;padding-block:13px}.section-head{display:block;margin-bottom:24px}.section-head>p{margin-top:15px}h2{font-size:29px}section{padding-block:40px}.kicker{font-size:13px}.map-label{font-size:12px;padding:12px 12px 0}.map-foot{padding:0 13px 15px;font-size:14px}.axis-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:15px}.axis-button{font-size:16px;padding:10px 12px}.axis-controls .axis-button:last-child{grid-column:1/-1}.spotlight{padding:23px;grid-template-columns:43px 1fr;gap:0 12px}.spotlight-number{font-size:38px}.spotlight h3{font-size:24px}.spotlight p{font-size:18px}.spotlight h4{margin-top:12px}.axis-cards{grid-template-columns:1fr}.axis-mini{padding:22px}.axis-mini h3{font-size:23px}.map-disclaimer{font-size:16px}.project-grid,.existing-grid{grid-template-columns:1fr}.project-card,.existing-card{padding:24px}.project-card h3{font-size:25px}.measure strong{font-size:34px}.card-top{align-items:center}.card-top .eyebrow{font-size:11px}.status{font-size:13px}.filter-button{font-size:15px;padding:9px 13px}.filter-row{gap:8px}.infra-row{grid-template-columns:32px 1fr;gap:10px 13px;padding-block:25px}.infra-number{font-size:24px}.infra-heading h3{font-size:23px}.infra-heading p{font-size:18px}.pop-cell{padding:23px 15px}.pop-cell strong{font-size:35px}.pop-cell strong span{font-size:17px}.analysis-cta{padding:27px 23px;gap:20px}.analysis-cta h2{font-size:29px}.cta-button{font-size:18px}.sources-grid{grid-template-columns:1fr}.footer-grid{gap:18px}.signature{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.preview-bar,.section-nav,.main-nav,.filter-row{display:none}.shell{max-width:none;padding:0}.hero{padding-top:0}section{padding:20px 0}.project-grid,.existing-grid{display:block}.project-card,.existing-card{break-inside:avoid;margin:15px 0}.map-layout{display:block}.analysis-cta{background:white;color:#174b3c;padding:0;display:block}.analysis-cta p,.analysis-cta h2{color:#174b3c}.cta-button{display:none}}

.hero.shell{padding-inline:34px}.hero .eyebrow{line-height:1.6}
@media(max-width:900px){.hero.shell{padding-inline:24px}}
@media(max-width:600px){.hero.shell{padding:32px 20px}.hero .eyebrow{font-size:11px;letter-spacing:.06em}.brand{gap:8px}.brand>div{min-width:0}.brand small{font-size:10px}.header-inner{gap:8px}.brand strong{font-size:16px}.brand img{width:32px;height:32px}}
.source-entry p{font-size:15px;color:var(--muted);line-height:1.8}

@media(max-width:600px){.limit p,.source-body p{font-size:18px!important}.limit,.map-disclaimer,.source-entry p,.source-body a,.source-entry a,summary,.axis-mini .range,.map-foot{font-size:18px}}

.axis-map-item.dimmed{opacity:.65}.map-enlarge{margin:0 20px 18px}.map-zoom{overflow-x:auto;max-width:100%;border:1px solid var(--line)}.map-zoom svg{display:block;min-width:1000px;width:100%;height:auto}.map-zoom .axis-map-item{cursor:default}
/* required styles */

.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
	position: absolute;
	left: 0;
	top: 0;
	}
.leaflet-container {
	overflow: hidden;
	}
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
	-webkit-user-select: none;
	   -moz-user-select: none;
	        user-select: none;
	  -webkit-user-drag: none;
	}
/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::selection {
	background: transparent;
}
/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
	image-rendering: -webkit-optimize-contrast;
	}
/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
	width: 1600px;
	height: 1600px;
	-webkit-transform-origin: 0 0;
	}
.leaflet-marker-icon,
.leaflet-marker-shadow {
	display: block;
	}
/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg {
	max-width: none !important;
	max-height: none !important;
	}
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
	max-width: none !important;
	max-height: none !important;
	width: auto;
	padding: 0;
	}

.leaflet-container img.leaflet-tile {
	/* See: https://bugs.chromium.org/p/chromium/issues/detail?id=600120 */
	mix-blend-mode: plus-lighter;
}

.leaflet-container.leaflet-touch-zoom {
	-ms-touch-action: pan-x pan-y;
	touch-action: pan-x pan-y;
	}
.leaflet-container.leaflet-touch-drag {
	-ms-touch-action: pinch-zoom;
	/* Fallback for FF which doesn't support pinch-zoom */
	touch-action: none;
	touch-action: pinch-zoom;
}
.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
	-ms-touch-action: none;
	touch-action: none;
}
.leaflet-container {
	-webkit-tap-highlight-color: transparent;
}
.leaflet-container a {
	-webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}
.leaflet-tile {
	filter: inherit;
	visibility: hidden;
	}
.leaflet-tile-loaded {
	visibility: inherit;
	}
.leaflet-zoom-box {
	width: 0;
	height: 0;
	-moz-box-sizing: border-box;
	     box-sizing: border-box;
	z-index: 800;
	}
/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
	-moz-user-select: none;
	}

.leaflet-pane         { z-index: 400; }

.leaflet-tile-pane    { z-index: 200; }
.leaflet-overlay-pane { z-index: 400; }
.leaflet-shadow-pane  { z-index: 500; }
.leaflet-marker-pane  { z-index: 600; }
.leaflet-tooltip-pane   { z-index: 650; }
.leaflet-popup-pane   { z-index: 700; }

.leaflet-map-pane canvas { z-index: 100; }
.leaflet-map-pane svg    { z-index: 200; }

.leaflet-vml-shape {
	width: 1px;
	height: 1px;
	}
.lvml {
	behavior: url(#default#VML);
	display: inline-block;
	position: absolute;
	}


/* control positioning */

.leaflet-control {
	position: relative;
	z-index: 800;
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}
.leaflet-top,
.leaflet-bottom {
	position: absolute;
	z-index: 1000;
	pointer-events: none;
	}
.leaflet-top {
	top: 0;
	}
.leaflet-right {
	right: 0;
	}
.leaflet-bottom {
	bottom: 0;
	}
.leaflet-left {
	left: 0;
	}
.leaflet-control {
	float: left;
	clear: both;
	}
.leaflet-right .leaflet-control {
	float: right;
	}
.leaflet-top .leaflet-control {
	margin-top: 10px;
	}
.leaflet-bottom .leaflet-control {
	margin-bottom: 10px;
	}
.leaflet-left .leaflet-control {
	margin-left: 10px;
	}
.leaflet-right .leaflet-control {
	margin-right: 10px;
	}


/* zoom and fade animations */

.leaflet-fade-anim .leaflet-popup {
	opacity: 0;
	-webkit-transition: opacity 0.2s linear;
	   -moz-transition: opacity 0.2s linear;
	        transition: opacity 0.2s linear;
	}
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
	opacity: 1;
	}
.leaflet-zoom-animated {
	-webkit-transform-origin: 0 0;
	    -ms-transform-origin: 0 0;
	        transform-origin: 0 0;
	}
svg.leaflet-zoom-animated {
	will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
	-webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
	   -moz-transition:    -moz-transform 0.25s cubic-bezier(0,0,0.25,1);
	        transition:         transform 0.25s cubic-bezier(0,0,0.25,1);
	}
.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
	-webkit-transition: none;
	   -moz-transition: none;
	        transition: none;
	}

.leaflet-zoom-anim .leaflet-zoom-hide {
	visibility: hidden;
	}


/* cursors */

.leaflet-interactive {
	cursor: pointer;
	}
.leaflet-grab {
	cursor: -webkit-grab;
	cursor:    -moz-grab;
	cursor:         grab;
	}
.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
	cursor: crosshair;
	}
.leaflet-popup-pane,
.leaflet-control {
	cursor: auto;
	}
.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
	cursor: move;
	cursor: -webkit-grabbing;
	cursor:    -moz-grabbing;
	cursor:         grabbing;
	}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
	pointer-events: none;
	}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}

/* visual tweaks */

.leaflet-container {
	background: #ddd;
	outline-offset: 1px;
	}
.leaflet-container a {
	color: #0078A8;
	}
.leaflet-zoom-box {
	border: 2px dotted #38f;
	background: rgba(255,255,255,0.5);
	}


/* general typography */
.leaflet-container {
	font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	}


/* general toolbar styles */

.leaflet-bar {
	box-shadow: 0 1px 5px rgba(0,0,0,0.65);
	border-radius: 4px;
	}
.leaflet-bar a {
	background-color: #fff;
	border-bottom: 1px solid #ccc;
	width: 26px;
	height: 26px;
	line-height: 26px;
	display: block;
	text-align: center;
	text-decoration: none;
	color: black;
	}
.leaflet-bar a,
.leaflet-control-layers-toggle {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	display: block;
	}
.leaflet-bar a:hover,
.leaflet-bar a:focus {
	background-color: #f4f4f4;
	}
.leaflet-bar a:first-child {
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	}
.leaflet-bar a:last-child {
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	border-bottom: none;
	}
.leaflet-bar a.leaflet-disabled {
	cursor: default;
	background-color: #f4f4f4;
	color: #bbb;
	}

.leaflet-touch .leaflet-bar a {
	width: 30px;
	height: 30px;
	line-height: 30px;
	}
.leaflet-touch .leaflet-bar a:first-child {
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
	}
.leaflet-touch .leaflet-bar a:last-child {
	border-bottom-left-radius: 2px;
	border-bottom-right-radius: 2px;
	}

/* zoom control */

.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
	font: bold 18px 'Lucida Console', Monaco, monospace;
	text-indent: 1px;
	}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out  {
	font-size: 22px;
	}


/* layers control */

.leaflet-control-layers {
	box-shadow: 0 1px 5px rgba(0,0,0,0.4);
	background: #fff;
	border-radius: 5px;
	}
.leaflet-control-layers-toggle {
	background-image: url(images/layers.png);
	width: 36px;
	height: 36px;
	}
.leaflet-retina .leaflet-control-layers-toggle {
	background-image: url(images/layers-2x.png);
	background-size: 26px 26px;
	}
.leaflet-touch .leaflet-control-layers-toggle {
	width: 44px;
	height: 44px;
	}
.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
	display: none;
	}
.leaflet-control-layers-expanded .leaflet-control-layers-list {
	display: block;
	position: relative;
	}
.leaflet-control-layers-expanded {
	padding: 6px 10px 6px 6px;
	color: #333;
	background: #fff;
	}
.leaflet-control-layers-scrollbar {
	overflow-y: scroll;
	overflow-x: hidden;
	padding-right: 5px;
	}
.leaflet-control-layers-selector {
	margin-top: 2px;
	position: relative;
	top: 1px;
	}
.leaflet-control-layers label {
	display: block;
	font-size: 13px;
	font-size: 1.08333em;
	}
.leaflet-control-layers-separator {
	height: 0;
	border-top: 1px solid #ddd;
	margin: 5px -10px 5px -6px;
	}

/* Default icon URLs */
.leaflet-default-icon-path { /* used only in path-guessing heuristic, see L.Icon.Default */
	background-image: url(images/marker-icon.png);
	}


/* attribution and scale controls */

.leaflet-container .leaflet-control-attribution {
	background: #fff;
	background: rgba(255, 255, 255, 0.8);
	margin: 0;
	}
.leaflet-control-attribution,
.leaflet-control-scale-line {
	padding: 0 5px;
	color: #333;
	line-height: 1.4;
	}
.leaflet-control-attribution a {
	text-decoration: none;
	}
.leaflet-control-attribution a:hover,
.leaflet-control-attribution a:focus {
	text-decoration: underline;
	}
.leaflet-attribution-flag {
	display: inline !important;
	vertical-align: baseline !important;
	width: 1em;
	height: 0.6669em;
	}
.leaflet-left .leaflet-control-scale {
	margin-left: 5px;
	}
.leaflet-bottom .leaflet-control-scale {
	margin-bottom: 5px;
	}
.leaflet-control-scale-line {
	border: 2px solid #777;
	border-top: none;
	line-height: 1.1;
	padding: 2px 5px 1px;
	white-space: nowrap;
	-moz-box-sizing: border-box;
	     box-sizing: border-box;
	background: rgba(255, 255, 255, 0.8);
	text-shadow: 1px 1px #fff;
	}
.leaflet-control-scale-line:not(:first-child) {
	border-top: 2px solid #777;
	border-bottom: none;
	margin-top: -2px;
	}
.leaflet-control-scale-line:not(:first-child):not(:last-child) {
	border-bottom: 2px solid #777;
	}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	box-shadow: none;
	}
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	border: 2px solid rgba(0,0,0,0.2);
	background-clip: padding-box;
	}


/* popup */

.leaflet-popup {
	position: absolute;
	text-align: center;
	margin-bottom: 20px;
	}
.leaflet-popup-content-wrapper {
	padding: 1px;
	text-align: left;
	border-radius: 12px;
	}
.leaflet-popup-content {
	margin: 13px 24px 13px 20px;
	line-height: 1.3;
	font-size: 13px;
	font-size: 1.08333em;
	min-height: 1px;
	}
.leaflet-popup-content p {
	margin: 17px 0;
	margin: 1.3em 0;
	}
.leaflet-popup-tip-container {
	width: 40px;
	height: 20px;
	position: absolute;
	left: 50%;
	margin-top: -1px;
	margin-left: -20px;
	overflow: hidden;
	pointer-events: none;
	}
.leaflet-popup-tip {
	width: 17px;
	height: 17px;
	padding: 1px;

	margin: -10px auto 0;
	pointer-events: auto;

	-webkit-transform: rotate(45deg);
	   -moz-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	}
.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
	background: white;
	color: #333;
	box-shadow: 0 3px 14px rgba(0,0,0,0.4);
	}
.leaflet-container a.leaflet-popup-close-button {
	position: absolute;
	top: 0;
	right: 0;
	border: none;
	text-align: center;
	width: 24px;
	height: 24px;
	font: 16px/24px Tahoma, Verdana, sans-serif;
	color: #757575;
	text-decoration: none;
	background: transparent;
	}
.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus {
	color: #585858;
	}
.leaflet-popup-scrolled {
	overflow: auto;
	}

.leaflet-oldie .leaflet-popup-content-wrapper {
	-ms-zoom: 1;
	}
.leaflet-oldie .leaflet-popup-tip {
	width: 24px;
	margin: 0 auto;

	-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
	filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
	}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
	border: 1px solid #999;
	}


/* div icon */

.leaflet-div-icon {
	background: #fff;
	border: 1px solid #666;
	}


/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
	position: absolute;
	padding: 6px;
	background-color: #fff;
	border: 1px solid #fff;
	border-radius: 3px;
	color: #222;
	white-space: nowrap;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events: none;
	box-shadow: 0 1px 3px rgba(0,0,0,0.4);
	}
.leaflet-tooltip.leaflet-interactive {
	cursor: pointer;
	pointer-events: auto;
	}
.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	position: absolute;
	pointer-events: none;
	border: 6px solid transparent;
	background: transparent;
	content: "";
	}

/* Directions */

.leaflet-tooltip-bottom {
	margin-top: 6px;
}
.leaflet-tooltip-top {
	margin-top: -6px;
}
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
	left: 50%;
	margin-left: -6px;
	}
.leaflet-tooltip-top:before {
	bottom: 0;
	margin-bottom: -12px;
	border-top-color: #fff;
	}
.leaflet-tooltip-bottom:before {
	top: 0;
	margin-top: -12px;
	margin-left: -6px;
	border-bottom-color: #fff;
	}
.leaflet-tooltip-left {
	margin-left: -6px;
}
.leaflet-tooltip-right {
	margin-left: 6px;
}
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	top: 50%;
	margin-top: -6px;
	}
.leaflet-tooltip-left:before {
	right: 0;
	margin-right: -12px;
	border-left-color: #fff;
	}
.leaflet-tooltip-right:before {
	left: 0;
	margin-left: -12px;
	border-right-color: #fff;
	}

/* Printing */

@media print {
	/* Prevent printers from removing background-images of controls. */
	.leaflet-control {
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
		}
	}

.street-map-shell{position:relative;margin-top:14px}.street-map{height:550px;width:100%;background:#eeeee9;z-index:0;font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif}.street-map-status{font-size:15px;margin:0;padding:9px 17px;background:#f8faf7;color:#526457}.street-tools{padding:12px 17px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.street-tools button{padding:8px 13px;background:white;border:1px solid #bdcfc1;border-radius:3px;color:#174b3c;font-size:15px;cursor:pointer;min-height:44px}.street-tools span{font-size:14px;color:#607166}.street-map .leaflet-control-attribution{font-size:11px;line-height:1.6;background:rgba(255,255,255,.94);max-width:100%}.street-map .leaflet-control-zoom a{color:#174b3c;background:white}.street-map .leaflet-tooltip{font-size:14px;padding:5px 9px;color:#174b3c;border:1px solid #9eb5a6;background:white}.map-node{background:var(--node-color);border:2px solid white;border-radius:50%;box-shadow:0 1px 4px #0004;color:white;font-size:13px;font-weight:700;text-align:center;line-height:26px;font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif}.map-node.active{box-shadow:0 0 0 3px #fff9,0 2px 6px #0004}.map-node.small{font-size:9px}.street-map .leaflet-interactive:focus-visible{outline:2px solid #a48143}.map-layout.street-expanded{grid-template-columns:1fr}.street-expanded .street-map{height:710px}.street-expanded .spotlight{display:grid;grid-template-columns:70px 1fr;gap:0 20px}.street-expanded .spotlight-number{grid-row:1/7;font-size:50px}.street-expanded .spotlight>*:not(.spotlight-number){grid-column:2}
@media(max-width:600px){.street-map{height:510px}.street-expanded .street-map{height:650px}.street-map-status{font-size:16px}.street-tools span{font-size:16px}.street-tools button{font-size:16px}.street-map .leaflet-control-attribution{font-size:10px}.street-expanded .spotlight{grid-template-columns:43px 1fr;gap:0 12px}}
.map-node,.map-node.active{box-shadow:none}
.map-node{background:#fffdf8;border:1.5px solid var(--node-color);color:var(--node-color);font-weight:600}.map-node.active{background:var(--node-color);border:1.5px solid #fffdf8;color:white}
@media(max-width:900px){#corridors .section-head{display:block}#corridors .section-head>p{margin-top:15px}}

.mobile-site-menu,.research-contact-dock{display:none}.axis-choice-status{font-size:16px;color:var(--g);margin:-5px 0 15px}.axis-directory{margin-top:18px}.project-more>summary{font-size:18px}.hero-copy{border-top:0}.hero-copy>summary{font-size:18px}.spotlight .spot-observe{grid-column:2;color:white;margin-top:8px}.spotlight .spot-observe summary{color:#d4c098}.spotlight .spot-observe p{font-size:18px}.mobile-site-menu a{display:flex;align-items:center;min-height:48px;padding:8px 12px;font-size:17px;text-decoration:none}
@media(min-width:901px){.spotlight .spot-observe{grid-column:auto}}
@media(max-width:600px){body{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}.header-inner{position:relative}.main-nav{display:none}.mobile-site-menu{display:block;border:1px solid var(--line);flex:none;background:white;z-index:8}.mobile-site-menu>summary{font-size:16px;min-width:96px;min-height:46px;padding:8px 25px 8px 10px}.mobile-site-menu>summary:after{top:8px;right:6px}.mobile-site-menu>nav{position:absolute;right:0;top:calc(100% - 5px);width:230px;background:white;border:1px solid var(--line);box-shadow:0 8px 18px #10382d18;padding:6px;z-index:8}.hero-grid{gap:15px}.hero.shell{padding-block:28px 22px}.hero-copy{padding-left:14px}.hero-copy summary{font-size:17px}.hero-counts{margin-top:15px}.baseline{margin-top:14px}.section-nav a{min-height:48px;display:inline-flex;align-items:center}.axis-controls{margin:0 0 12px;gap:7px}.axis-button{display:flex;align-items:center;gap:8px;min-height:48px;padding:8px 10px;font-size:16px}.axis-button span{font-size:14px;flex:none}.axis-controls .axis-button:last-child{grid-column:auto}.axis-choice-status{font-size:16px;margin:0 0 12px}.street-map{height:360px}.spotlight{padding:18px;grid-template-columns:34px 1fr;gap:0 10px}.spotlight-number{font-size:30px;margin-bottom:12px}.spotlight h3{font-size:22px}.spotlight .range{font-size:17px}.spotlight p{line-height:1.7}.spotlight h4{font-size:17px}.spotlight a{font-size:17px;min-height:48px;display:flex;align-items:center}.project-card{padding:21px}.project-card h3{font-size:24px;margin-bottom:12px}.project-card .card-top{margin-bottom:12px}.project-card .measure{padding-bottom:14px;margin-bottom:14px}.project-card .limit{margin:14px 0}.project-card .field{margin-bottom:12px}.project-card .observe{padding:12px;margin:12px 0}.research-contact-dock{display:grid;grid-template-columns:1fr 1.25fr;position:fixed;left:0;right:0;bottom:0;z-index:10;background:#fffdf8;border-top:1px solid var(--line);padding:7px 12px calc(7px + env(safe-area-inset-bottom,0px));gap:8px}.research-contact-dock a{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:17px;font-weight:600;text-decoration:none;border:1px solid var(--g);color:var(--g)}.research-contact-dock a:last-child{background:var(--g);color:white}.footer nav a{min-height:44px;display:inline-flex;align-items:center}}
@media print{.mobile-site-menu,.research-contact-dock{display:none!important}}


/* fiber-r10: quiet editorial surfaces and static cartographic light. */
:root{--paper:#f7f5ef;--line:#dcded5;--gold:#9c7d48;--g:#194d40;--deep:#113d33;--muted:#5e6f64}
body{background:#fffefa}.header{background:#fffefa}.header-inner{min-height:94px}.main-nav a{padding:9px 0;border-bottom:1px solid transparent}.main-nav a:hover{border-color:var(--gold)}
.hero{position:relative;padding-top:64px;padding-bottom:38px}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,#f3f0e6 0%,#faf9f4 53%,#f1f5f0 100%);border-bottom:1px solid #e1e3d9}.hero h1{font-weight:650;letter-spacing:-.045em}.hero .subtitle{color:#4a6357}.hero .eyebrow{border-left:0;padding-left:0;letter-spacing:.16em;font-size:12px}.hero .eyebrow:before{content:"";display:inline-block;width:30px;height:2px;margin-right:12px;vertical-align:middle;background:linear-gradient(90deg,#a78a52,#d6c9a9)}
.hero-counts{gap:0;border-top:1px solid #d8ddcf;padding-top:18px}.hero-counts>div{flex:1;position:relative;padding-left:17px}.hero-counts>div:first-child{padding-left:0}.hero-counts>div+div{border-left:1px solid #d8ddcf}.hero-counts strong{font-size:32px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.hero-counts span{font-size:14px}.hero-copy{background:#fffefa9c;border:1px solid #dedfd1;border-left:2px solid #a88c58;border-radius:0 10px 10px 0;padding:8px 21px}.hero-copy summary{font-weight:550}.baseline{font-size:14px;letter-spacing:.02em}.section-nav{background:#fffefaf5;box-shadow:0 4px 12px #1c403108}.section-nav a{position:relative}.section-nav a:after{content:"";position:absolute;bottom:8px;left:0;right:100%;height:2px;background:var(--gold);transition:right .18s ease}.section-nav a:hover:after,.section-nav a:focus-visible:after{right:0}
.kicker{color:#987b48;letter-spacing:.08em}.section-head h2{font-weight:650}.section-head>p{color:#607166}.axis-controls{gap:10px}.axis-button{border-radius:8px;padding:13px 15px;background:#fffefa;transition:background .15s,border-color .15s,box-shadow .15s;position:relative}.axis-button span{font-size:14px;letter-spacing:.06em;color:var(--axis-tone)}.axis-button:before{content:"";position:absolute;left:0;top:15px;bottom:15px;width:2px;background:var(--axis-tone);opacity:.45}.axis-button[aria-pressed=true]{background:var(--axis-tone);border-color:var(--axis-tone);box-shadow:0 3px 10px #1b433220}.axis-button[aria-pressed=true]:before{background:#f3e8cc;opacity:.9}.axis-button[aria-pressed=true] span{color:#fff2d6}.axis-choice-status{font-size:16px;display:flex;align-items:center;gap:9px}.axis-choice-status:before{content:"";width:6px;height:6px;border:1px solid #a58a55;transform:rotate(45deg);flex:none}
.map-layout{grid-template-columns:minmax(0,1.85fr) minmax(300px,.95fr);gap:22px;align-items:stretch}.map-frame{background:#fffefa;border:1px solid #d6ddd2;border-radius:12px;box-shadow:0 10px 32px #193d3010;overflow:hidden;min-width:0}.map-label{padding:18px 20px 15px;align-items:center;font-size:14px;background:#fffefa;border-bottom:1px solid #e0e5da}.map-label>span:first-child{font-weight:600;color:#315b4b}.map-label>span:last-child{font-size:12px;letter-spacing:.03em;color:#66786b}.street-map-shell{margin-top:0;isolation:isolate}.street-map{height:550px;background:#eeefe9}.street-map .leaflet-tile-container{background:#f1f2eb}.street-map-status{background:#f7f7f1;border-top:1px solid #e0e5da;font-size:14px;padding:12px 18px;color:#566d5e;line-height:1.8}.street-map .leaflet-control-zoom{border:1px solid #bdcbbd!important;box-shadow:0 3px 10px #243e2d16!important;border-radius:7px!important;overflow:hidden}.street-map .leaflet-control-zoom a{width:36px;height:36px;line-height:36px;font-size:22px;background:#fffef9;border-bottom-color:#d8dfd2}.street-map .leaflet-control-zoom a:hover{background:#edf2e9}.street-map .leaflet-control-scale-line{border-color:#5a7162;background:#fffef9e8;font-size:11px}.street-map .leaflet-control-attribution{background:#fffef9eb;font-size:10px;color:#516657}.street-map .leaflet-tooltip{border:1px solid #c3cfbf;border-radius:5px;box-shadow:0 4px 14px #17382816;color:#254c3d;padding:7px 11px;background:#fffefa;font-size:14px}.street-tools{padding:13px 18px;gap:8px}.street-tools button{border-radius:6px;background:#fffefa;font-size:15px;border-color:#c8d3c6;padding:8px 13px}.street-tools button:hover{border-color:#7d9b85;background:#f0f4eb}.street-tools span{font-size:13px;line-height:1.8;color:#657569}.map-foot{font-size:14px;line-height:1.8;padding:0 18px 17px}.fiber-legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:13px 18px 0;color:#5a6e60;font-size:13px;line-height:1.6}.fiber-legend span{display:inline-flex;align-items:center;gap:7px}.fiber-legend i{display:inline-block;width:28px;height:6px;background:linear-gradient(#367a69 0 35%,#f6f6d9 35% 55%,#367a69 55%);border-radius:10px;box-shadow:0 0 0 2px #367a6915}.fiber-legend b{display:inline-block;width:24px;border-top:1px dashed #627468}.fiber-north{position:absolute;right:15px;top:14px;z-index:450;pointer-events:none;display:grid;justify-items:center;width:30px;color:#395e4c;font-size:11px;letter-spacing:.08em;text-shadow:0 1px 3px #fff}.fiber-north:before{content:"";display:block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:16px solid #416652;margin-bottom:2px}.fiber-hit{cursor:pointer;stroke-opacity:0;pointer-events:stroke}.fiber-light{pointer-events:none}.map-node,.map-node.active{border-radius:7px;box-shadow:none!important;font-size:12px;font-weight:650;font-variant-numeric:tabular-nums;background:#fffefa;border:1.4px solid var(--node-color);color:var(--node-color);outline:none}.map-node:before{content:"";position:absolute;inset:3px;border:1px solid currentColor;border-radius:3px;opacity:.16;pointer-events:none}.map-node.active{background:var(--node-color);color:#fffef2;border:1.4px solid #fffefa}.map-node.small{border-radius:3px;font-size:9px}.map-node.small:before{inset:2px;border-radius:1px;opacity:.25}
.spotlight{background:linear-gradient(155deg,#194f42,#10382f);border:1px solid #1d5445;border-radius:12px;padding:28px;position:relative;overflow:hidden;box-shadow:0 10px 32px #193d3010}.spotlight:before{content:"";position:absolute;right:22px;top:30px;width:38px;height:38px;border-top:1px solid #cbb67c66;border-right:1px solid #cbb67c66;pointer-events:none}.spotlight-number{font-size:64px;color:#d3bd87;font-weight:300;letter-spacing:-.065em;font-variant-numeric:tabular-nums}.spotlight h3{font-size:26px;font-weight:600;line-height:1.5}.spotlight .range{color:#c9d9ca;font-size:16px}.spotlight h4{font-size:15px;color:#dbc790;font-weight:550}.spotlight .spot-observe{border-top-color:#ffffff26}.spotlight .spot-observe summary{color:#d3bd87}.spotlight a{border-top:1px solid #ffffff26;margin-top:18px;line-height:1.7;min-height:48px;display:flex;align-items:center}.map-disclaimer{background:#f6f3e9;border-left:2px solid #a78b52;border-radius:0 6px 6px 0;font-size:16px;line-height:1.8}.axis-directory>summary{font-size:17px}.axis-mini{border-radius:9px;background:#fffefa}.axis-mini .num{letter-spacing:.08em}
.projects,.resilience{background:#f5f6f0;border-block:1px solid #e5e8dd}.filter-button{border-radius:7px;background:#fffefa}.filter-button[aria-pressed=true]{box-shadow:inset 0 0 0 1px #ffffff35}.project-grid,.existing-grid{gap:24px}.project-card,.existing-card{border-radius:11px;border:1px solid #d9dfd3;padding:30px;background:#fffefa;box-shadow:0 4px 16px #25483305;position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,#507665 0%,#b7a274 48%,#e3decd 100%)}.card-top .eyebrow{color:#7c866f;letter-spacing:.1em;font-size:12px}.status{border-radius:20px;font-size:13px;padding:5px 11px;white-space:normal;border-color:#ccd7c8;background:#eff4e9;color:#3b6348}.project-card[data-stage=planning] .status{background:#f5f0e3;color:#7a6036;border-color:#dcd1b9}.project-card[data-stage=review] .status{background:#eef2f5;color:#4d6876;border-color:#d3dce1}.project-card h3{font-size:26px;font-weight:650;line-height:1.5}.measure{background:linear-gradient(120deg,#f2f5ed,#faf8f1);border-radius:7px;padding:17px 19px;margin-bottom:20px;border-bottom:0}.measure strong{font-size:36px;font-weight:600;letter-spacing:-.04em}.measure span{font-size:14px;line-height:1.7}.project-card .field{margin-bottom:8px}.project-card .limit{border-left-color:#b49b64;color:#735f3e;font-size:16px}.project-card .limit p{color:#735f3e}.project-more>summary{margin-top:18px;font-size:17px}.project-more .observe{border-radius:6px;background:#f3f5ed}.existing-card h3{font-weight:600}.existing-card .status{border-radius:20px}.infra-list{border-top-color:#cbd6c6}.infra-row{gap:24px;padding-block:34px;border-bottom-color:#d5ddce}.infra-number{display:flex;justify-content:center;align-items:center;width:44px;height:44px;border:1px solid #c7d1be;border-radius:8px;font-size:20px;font-weight:450;color:#7b704f;background:#fffefa}.infra-heading h3{font-size:24px;font-weight:600}.status-guide{gap:8px}.status-guide span{border-radius:5px;padding:7px 12px;font-size:13px;background:#fffefa}.pop-panel{border:1px solid #d8dfd0;border-radius:11px;overflow:hidden;background:#f7f7f0}.pop-cell{padding:31px 28px}.pop-cell strong{font-size:48px;letter-spacing:-.05em}.analysis-cta{border-radius:12px;background:linear-gradient(135deg,#1c5143,#12382e);box-shadow:0 12px 32px #21473412}.cta-button{border-radius:7px;background:#e9dbb8}.cta-button:hover{background:#f0e4c6}.sources-section{background:#fffefa}.sources-grid{column-gap:32px}.source-entry{border-top-color:#dfe3d6}.source-entry h3{color:#60715e}.footer{background:#f1f2ea}.mobile-site-menu{border-radius:7px}.research-contact-dock{background:#fffefbf7;box-shadow:0 -4px 16px #173c3010}.research-contact-dock a{border-radius:6px}
@media(max-width:1000px){.map-layout{grid-template-columns:1fr}.spotlight{display:grid;grid-template-columns:60px 1fr;gap:0 20px}.spotlight-number{grid-row:1/7;font-size:48px}.spotlight>*:not(.spotlight-number){grid-column:2}.spotlight .spot-observe{grid-column:2}.spotlight a{margin-top:12px}.spotlight:before{width:24px;height:24px}}
@media(max-width:600px){.hero.shell{padding-block:32px 24px}.hero:before{inset:0}.header-inner{min-height:80px}.hero .eyebrow{font-size:10px;letter-spacing:.08em}.hero h1{font-size:42px}.hero-counts strong{font-size:28px}.hero-counts span{font-size:13px}.hero-counts>div{padding-left:12px}.hero-copy{padding:4px 13px}.baseline{font-size:14px;line-height:1.8}.axis-controls{gap:8px}.axis-button{font-size:16px;padding:10px 11px;min-height:50px;border-radius:7px;gap:8px}.axis-button span{font-size:13px}.axis-choice-status{font-size:16px}.map-layout{gap:15px}.map-frame{border-radius:10px}.map-label{padding:13px 14px;font-size:13px;gap:8px}.map-label>span:last-child{font-size:11px}.street-map{height:390px}.street-map-status{font-size:16px;padding:11px 14px}.street-tools{padding:12px 14px}.street-tools button{font-size:16px;min-height:46px}.street-tools span{font-size:16px;line-height:1.7}.street-map .leaflet-control-zoom a{width:40px;height:40px;line-height:40px}.fiber-legend{font-size:14px;padding:12px 14px 0;gap:13px}.map-foot{font-size:16px;padding:0 14px 15px}.fiber-north{right:10px;top:11px}.spotlight{padding:21px;grid-template-columns:34px 1fr;gap:0 12px}.spotlight-number{font-size:32px}.spotlight h3{font-size:23px;padding-right:5px}.spotlight .range{font-size:17px}.spotlight h4{font-size:17px}.spotlight:before{right:15px;top:18px;width:16px;height:16px}.spotlight a{font-size:17px}.project-card,.existing-card{padding:23px}.project-card h3{font-size:24px}.card-top .eyebrow{font-size:11px}.status{font-size:13px;padding:4px 9px}.measure{padding:15px 16px}.measure strong{font-size:34px}.measure span{font-size:16px}.project-more>summary{font-size:18px}.infra-row{grid-template-columns:32px 1fr;gap:10px 14px;padding-block:27px}.infra-number{width:30px;height:34px;font-size:16px;border-radius:5px}.infra-heading h3{font-size:23px}.status-guide span{font-size:14px}.pop-cell{padding:24px 16px}.pop-cell strong{font-size:37px}.source-entry a{font-size:17px}.research-contact-dock a{min-height:48px}}
@media(prefers-reduced-motion:reduce){.axis-button,.section-nav a:after{transition:none}}
@media print{.hero:before,.fiber-north{display:none}.map-frame,.project-card,.spotlight{box-shadow:none}.hero{background:white}.analysis-cta{background:white}.measure{background:#f5f5f0}}

.fiber-hero-column{align-self:center;min-width:0}.fiber-hero-art{margin:0 0 20px;position:relative;border-bottom:1px solid #d9dfd0}.fiber-hero-art svg{display:block;width:100%;height:auto;max-height:305px;overflow:visible}.fiber-hero-art figcaption{display:flex;align-items:center;gap:10px;font-size:12px;color:#74826b;letter-spacing:.12em;padding:0 0 15px}.fiber-hero-art figcaption:before{content:"";width:24px;height:1px;background:#b8a36c}.hero-grid{align-items:center}.hero-copy{margin-bottom:0}
.map-node.small{border-radius:50%;overflow:hidden}.map-node.small:before{border-radius:50%}
.axis-button[aria-pressed=true] span{color:#fff}
@media(max-width:900px){.fiber-hero-art{display:none}.fiber-hero-column{width:100%}}
@media(max-width:600px){.source-entry a,.map-disclaimer,.map-foot{font-size:18px}}


/* basemap-r11: embedded geographic content remains visible if every remote tile fails. */
.street-map{background:#f3f4ed}.local-map-label{background:none;border:0;pointer-events:none}.local-label-text{position:absolute;display:block;white-space:nowrap;color:#5e7063;font-size:12px;font-weight:500;line-height:1.2;text-shadow:-1px -1px 0 #fffefa,1px -1px 0 #fffefa,-1px 1px 0 #fffefa,1px 1px 0 #fffefa;transform-origin:center;pointer-events:none}.local-label-text.station{font-size:11px;color:#456b66;background:#fffefade;border:1px solid #b9ccc0;border-radius:3px;padding:2px 4px;text-shadow:none;margin-top:10px}.local-label-text.airport{font-size:17px;color:#8a9889;letter-spacing:.15em;margin-top:19px}.local-label-text.road{margin-left:-7px;margin-top:-8px}.street-tools #street-retry{border-color:#a68d5f;color:#6e5933;background:#faf6e9;min-height:46px}.street-tools #street-retry[hidden]{display:none!important}


/* r12: crisp embedded geography is the primary map, including on slow mobile networks. */
.street-map{background:#f7f7f1;height:550px}.local-map-label[hidden]{display:none!important}.local-label-text{color:#304d42;font-size:14px;font-weight:650;line-height:1.3;text-shadow:0 1px 0 white,1px 0 0 white,-1px 0 0 white,0 -1px 0 white}.local-label-text.road{background:#fffefae8;border-radius:3px;padding:1px 3px;margin:0}.local-label-text.station{font-size:12px;font-weight:600;color:#215957;background:#fffffff2;border:1px solid #85a79a;padding:3px 5px;margin-top:13px}.local-label-text.airport{font-size:16px;color:#587266;font-weight:500;letter-spacing:.1em}.local-label-text.map-label-secondary{font-size:12px}.map-node{font-size:15px!important;font-weight:700!important;border-width:2px!important;box-shadow:0 1px 4px #163e3420}.street-map-status{color:#315649;font-size:14px}.street-tools button[aria-pressed=true]{background:#1f5849;color:#fff;border-color:#1f5849}.street-tools{align-items:center}.street-tools span{flex-basis:100%}.street-map .leaflet-detailBase-pane{background:transparent}.street-map .leaflet-control-attribution{max-width:85%;line-height:1.4}.street-map .leaflet-control-scale{margin-bottom:7px}
@media(max-width:600px){.street-map{height:450px}.street-expanded .street-map{height:600px}.local-label-text{font-size:14px}.local-label-text.station{font-size:11px;padding:2px 4px}.street-tools{padding:12px;gap:7px}.street-tools button{font-size:14px;padding:9px 11px;min-height:44px}.street-map-status{font-size:14px;padding:11px 13px}.map-label{padding:14px 13px;gap:6px;flex-wrap:wrap}.map-label>span:first-child{font-size:15px}.map-label>span:last-child{font-size:12px}.map-foot{font-size:13px;padding-inline:13px}}

.map-node.small{font-size:10px!important}.street-map-status{font-size:16px}.street-tools button{font-size:16px}.street-tools span{font-size:16px}.map-foot{font-size:18px}@media(max-width:600px){.street-map-status{font-size:16px}.street-tools button{font-size:16px}.street-tools span{font-size:16px}.map-foot{font-size:18px}}

@media(max-width:600px){.yb-consent{bottom:calc(88px + env(safe-area-inset-bottom,0px))!important;max-height:calc(100dvh - 112px);overflow:auto}}/* Development map: one location index, one selection, four explicit stages. */
.map-layout{grid-template-columns:minmax(0,1.8fr) minmax(310px,.85fr);align-items:start;gap:24px}
.map-layout .map-frame{min-width:0}.map-layout .street-map{height:590px}
.development-directory{padding:25px;background:#fffefa;border:1px solid #d5dfd7;border-radius:12px;min-width:0;box-shadow:0 10px 30px #173b2c08}
.directory-heading .kicker{font-size:11px;letter-spacing:.13em;color:#747c70}.directory-heading h3{font-size:27px;line-height:1.3;margin:8px 0}.directory-heading p{font-size:16px;color:#53675d;margin:0 0 15px}
.project-stage-legend{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin:0 0 17px;padding-bottom:17px;border-bottom:1px solid #dce3d9;font-size:13px;color:#40564c}
.stage-build{--stage-color:#9a652a;--stage-wash:#f8efdf}.stage-preopen{--stage-color:#386a77;--stage-wash:#eaf2f3}.stage-planning{--stage-color:#60674d;--stage-wash:#f0f1e9}.stage-review{--stage-color:#79617f;--stage-wash:#f3edf5}
.project-stage-legend span{display:flex;align-items:center;gap:6px;line-height:1.5}.project-stage-legend span:before{content:"";display:block;flex:none;width:9px;height:9px;border-radius:50%;background:var(--stage-color)}
.project-map-directory{display:grid;gap:4px}.project-index-item{display:flex;align-items:center;gap:12px;min-height:63px;text-align:left;width:100%;padding:9px 10px;border:1px solid transparent;border-radius:7px;background:transparent;color:#213f33;cursor:pointer;font:inherit}
.project-index-item:hover{background:#f1f4ed;border-color:#ccd8cb}.project-index-item[aria-current=location]{background:#fbefea;border-color:#b95642}.project-index-code{display:grid;place-items:center;flex:none;width:39px;height:35px;border:1px solid var(--stage-color);border-radius:7px;color:var(--stage-color);background:var(--stage-wash);font:600 12px/1 system-ui,sans-serif;font-variant-numeric:tabular-nums}
.project-index-copy{display:grid;min-width:0;gap:3px}.project-index-copy strong{font-size:17px;font-weight:600;line-height:1.35}.project-index-copy small{font-size:13px;color:#637064;line-height:1.4}.project-index-arrow{margin-left:auto;color:#6c7a6d}.project-index-item[aria-current=location] .project-index-code{background:#a83f31;border-color:#a83f31;color:white}
.project-map-status{font-size:14px;line-height:1.8;color:#597064;margin:14px 0 0}.project-map-selection{background:#f8f7ef;border-top:2px solid #a83f31;margin:18px -1px 0;padding:17px 14px;border-radius:0 0 8px 8px}.project-map-selection[hidden]{display:none}.project-selection-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.project-code{font:600 12px/1.5 system-ui,sans-serif;color:#9d3c30}.project-stage{font-size:12px;line-height:1.6;padding:3px 7px;border:1px solid var(--stage-color);border-radius:4px;color:var(--stage-color);background:var(--stage-wash)}
.project-map-selection h3{font-size:22px;line-height:1.5;margin:9px 0}.project-map-selection p{font-size:16px;line-height:1.8;margin:7px 0;color:#334c3e}.project-map-selection .project-selection-address{font-size:14px;color:#647367}.project-selection-actions{display:flex;flex-wrap:wrap;gap:3px 17px;margin-top:8px}.project-selection-actions a{font-size:15px;min-height:44px;display:inline-flex;align-items:center;color:#244d3e;text-underline-offset:4px}
.map-more-topics{margin-top:17px;border-top:1px solid #dce3d9;padding-top:12px}.map-more-topics summary{font-size:15px;min-height:44px;display:flex;align-items:center;cursor:pointer}.map-more-topics nav{display:grid}.map-more-topics a{font-size:15px;min-height:44px;display:flex;align-items:center}.map-more-topics p{font-size:13px;line-height:1.8;color:#627267;margin:6px 0}
.yb-development-pin{background:none;border:0;display:grid;place-items:start center!important;cursor:pointer;filter:drop-shadow(0 2px 3px #15382e24)}
.development-pin-code{position:relative;display:grid;place-items:center;height:36px;width:42px;border:2px solid var(--stage-color);border-radius:10px;background:var(--pin-background,#fffefa);color:var(--pin-foreground,var(--stage-color));font:700 13px/1 system-ui,sans-serif;font-variant-numeric:tabular-nums;box-shadow:0 0 0 3px #fffefaad}
.development-pin-code:after{content:"";position:absolute;width:8px;height:8px;bottom:-7px;left:15px;background:var(--pin-background,#fffefa);border-right:2px solid var(--stage-color);border-bottom:2px solid var(--stage-color);transform:rotate(45deg)}
.yb-development-pin.yb-selected{--stage-color:#a83930;--pin-background:#a83930;--pin-foreground:#fff}.yb-development-pin.yb-selected .development-pin-code{box-shadow:0 0 0 4px #fffdf3,0 0 0 6px #a8393040}
.yb-development-pin:focus-visible{outline:3px solid #174c3c;outline-offset:5px;border-radius:10px}.development-label{border:0;background:none;pointer-events:none}.development-label[hidden]{display:none!important}.development-map-name{position:absolute;white-space:nowrap;font-size:13px;font-weight:650;line-height:1.4;color:#294b3c;padding:2px 5px;background:#fffefae8;border:1px solid #dbe3d7;border-radius:4px;box-shadow:0 1px 4px #102e2110}
.yb-project-map-note{font-size:14px;line-height:1.8;color:#586a5e;padding:13px 18px 0;margin:0}.legend-project{font:700 10px/20px system-ui,sans-serif;width:21px;height:21px;text-align:center;border:1px solid #7d7661;color:#5d624e;border-radius:5px;font-style:normal}
#axis-spotlight{margin-top:22px;padding:22px 26px;display:grid;grid-template-columns:45px minmax(180px,.7fr) minmax(220px,1fr);gap:4px 22px;align-items:start;min-width:0}
#axis-spotlight .spotlight-number{font-size:33px;grid-column:1;grid-row:1/5;margin:0}#axis-spotlight h3{font-size:23px;grid-column:2;grid-row:1;margin:0}#axis-spotlight .range{grid-column:2;grid-row:2;font-size:16px;margin:5px 0}#axis-spotlight h4{grid-column:3;grid-row:1;margin:0;font-size:16px}#axis-spotlight>p:not(.range){grid-column:3;grid-row:2;font-size:16px;margin:5px 0}#axis-spotlight .spot-observe{grid-column:3;grid-row:3;margin:0}#axis-spotlight>a{grid-column:2;grid-row:3;font-size:16px;margin:4px 0;min-height:44px;display:flex;align-items:center}
.map-layout.street-expanded{grid-template-columns:1fr}.street-expanded .street-map{height:700px}.street-expanded .project-map-directory{grid-template-columns:repeat(4,minmax(0,1fr))}.street-expanded .development-directory{padding:24px}.street-expanded .project-stage-legend{display:flex;flex-wrap:wrap}.street-expanded .project-map-selection{max-width:760px}
@media(max-width:1050px){.map-layout{grid-template-columns:1fr}.map-layout .street-map{height:550px}.project-map-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.project-stage-legend{display:flex;flex-wrap:wrap;gap:10px 20px}.development-directory{padding:22px}.directory-heading h3{font-size:25px}.project-map-selection{max-width:none}.map-layout.street-expanded .project-map-directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.map-layout .street-map{height:480px}.map-layout.street-expanded .street-map{height:630px}.map-layout{gap:15px}.development-directory{padding:18px 14px}.directory-heading h3{font-size:25px}.project-index-item{gap:8px;min-height:71px;padding:8px 5px}.project-index-code{width:33px;height:33px;font-size:11px}.project-index-copy strong{font-size:16px}.project-index-copy small{font-size:12px}.project-index-arrow{display:none}.project-stage-legend{display:grid;grid-template-columns:1fr 1fr;font-size:12px;gap:8px}.project-map-status{font-size:14px}.yb-project-map-note{padding-inline:13px;font-size:14px}.project-map-selection{padding:16px 11px}.project-map-selection h3{font-size:23px}.project-map-selection p{font-size:17px}.project-selection-actions a{font-size:16px;min-height:48px}.map-more-topics summary{font-size:16px}.map-more-topics a{font-size:16px;min-height:48px}.map-more-topics p{font-size:14px}.development-map-name{font-size:12px}.street-tools button{flex:1 1 auto}#axis-spotlight{padding:20px 16px;grid-template-columns:32px 1fr;gap:5px 12px}#axis-spotlight .spotlight-number{grid-column:1;grid-row:1/7;font-size:28px}#axis-spotlight h3,#axis-spotlight .range,#axis-spotlight h4,#axis-spotlight>p:not(.range),#axis-spotlight .spot-observe,#axis-spotlight>a{grid-column:2;grid-row:auto}#axis-spotlight h3{font-size:23px}#axis-spotlight .range,#axis-spotlight>p:not(.range){font-size:17px}#axis-spotlight>a{font-size:17px}.map-foot{font-size:14px}}
@media(max-width:350px){.project-map-directory{grid-template-columns:1fr}.project-index-item{min-height:61px}.project-index-arrow{display:inline}.project-stage-legend{grid-template-columns:1fr}.map-label>span:first-child{font-size:14px}.map-layout .street-map{height:460px}}
@media(prefers-reduced-motion:reduce){.yb-development-pin,.project-index-item{transition:none}}
@media print{.development-directory{box-shadow:none}.project-map-selection[hidden]{display:none}.map-more-topics nav{display:block}.yb-development-pin{filter:none}}


.street-map .leaflet-marker-icon[hidden]{display:none!important}

/* Bounded extension of the existing Yuanba development map. */
.project-search{margin:20px 0 10px}.project-search label{display:block;font-size:15px;font-weight:700;margin-bottom:8px}.project-search>div{display:flex;gap:6px}.project-search input{min-width:0;flex:1;width:100%;border:1px solid #9eaea2;border-radius:6px;padding:10px;font:16px/1.5 inherit;background:#fff;color:#263c33}.project-search button{flex:0 0 auto;min-height:46px;border:1px solid #6c8172;border-radius:6px;padding:8px 12px;background:#294f44;color:#fff;font:600 15px/1.4 inherit;cursor:pointer}.project-search #project-search-clear{background:#fffefa;color:#294f44}.project-search-status,.project-search-empty{font-size:14px;line-height:1.7;color:#506156;margin:8px 0 12px}.project-search-empty{background:#f5f0e4;padding:14px;border-radius:6px}.project-map-directory{max-height:430px;overflow-y:auto;padding:3px 5px 6px 2px;scrollbar-width:thin;scrollbar-color:#8a9b8d #f1f0e7}.project-index-item[hidden],.project-search-empty[hidden]{display:none!important}.project-map-directory:focus-visible{outline:3px solid #8a6b2c;outline-offset:3px}.project-location-method{border-left:3px solid #9a8260;padding:5px 0 5px 12px!important;color:#56665a;font-size:14px!important;line-height:1.7}.project-checked-date{font-size:13px!important;color:#5e6e62;margin-top:10px!important}.stage-complete{--stage-color:#446f77;--stage-wash:#edf4f4}.stage-complete.project-index-item{border-left-color:#446f77}.stage-complete .project-index-code,.project-stage.stage-complete{color:#365d65;background:#edf4f4}.project-stage-legend .stage-complete:before{background:#446f77}.development-cluster{width:48px;height:48px;border-radius:50%;background:#fffefa;border:2px solid #516e5d;box-shadow:0 3px 10px #17352b24;color:#294f44;display:flex;align-items:center;justify-content:center;gap:2px;cursor:pointer}.development-cluster span{font:700 20px/1 system-ui,sans-serif}.development-cluster small{font:600 12px/1 system-ui,sans-serif}.development-cluster:focus-visible{outline:3px solid #a53e32;outline-offset:3px}.infra-row>.yb-locate-project,.infra-row>.yb-location-note{grid-column:2/-1;margin-top:14px}.existing-card .yb-locate-project{margin-top:16px}.existing-card.yb-project-selected,.infra-row.yb-project-selected{outline:2px solid #ae4035;outline-offset:4px}.development-planned-corridor{pointer-events:none}.project-search :focus-visible{outline:3px solid #a27c31;outline-offset:2px}
@media(max-width:700px){.project-map-directory{max-height:350px}.project-search label{font-size:16px}.project-search button{padding:10px;min-height:48px}.project-search input{font-size:16px}.project-index-copy strong{font-size:16px}.project-index-copy small{font-size:13px}.infra-row>.yb-locate-project,.infra-row>.yb-location-note{grid-column:1/-1}.project-map-selection .project-location-method{font-size:15px!important}.project-map-selection .project-checked-date{font-size:14px!important}}
@media(max-width:350px){.project-map-directory{max-height:320px}.project-search>div{flex-wrap:wrap}.project-search input{flex-basis:100%}.project-search button{flex:1}.project-stage-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}
.project-index-item.yb-selected .project-index-code{background:#a83930!important;color:#fff!important}
@media print{.project-search,.development-cluster{display:none}.project-map-directory{max-height:none;overflow:visible}.project-map-directory .project-index-item[hidden]{display:flex!important}}

/* Native OSM tiles keep their original readable colour and contrast. */
#street-map .leaflet-tile-pane{filter:none;opacity:1}#street-map .leaflet-tile{filter:none!important;opacity:1}.street-map{background:#eceee8}

.project-index-item{text-decoration:none}.basemap-text-link{display:block;min-height:44px;padding-top:8px;font-size:16px;font-weight:600}

/* 20261101: compact, labelled location preview and direct map entry. */
.hero.shell{padding-block:36px 25px}.hero-grid{grid-template-columns:1fr 1.05fr;gap:42px;align-items:center}.hero .eyebrow{margin-bottom:15px}.hero h1{font-size:clamp(35px,3.8vw,49px);line-height:1.3;letter-spacing:-.035em;max-width:11em;margin:0 0 18px}.hero .subtitle{font-size:20px;line-height:1.75;max-width:25em;margin:0 0 22px}.hero-map-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;min-height:52px;padding:13px 22px;background:#294f44;color:white;border:1px solid #294f44;border-radius:6px;font-size:19px;font-weight:700;text-decoration:none}.hero-map-cta:hover{background:#1b3e33}.hero-map-cta:focus-visible,.hero-location-preview a:focus-visible{outline:3px solid #a67c35;outline-offset:4px}.hero-map-help{font-size:15px;color:#52665a;margin:10px 0 0;line-height:1.7}.hero-counts{margin-top:23px;padding-top:16px;gap:22px}.hero-counts>div{padding-left:16px}.hero-counts>div:first-child{padding-left:0}.hero-counts strong{font-size:27px;line-height:1.3}.hero-counts span{font-size:14px}.hero-location-preview{margin:0 0 10px}.hero-location-preview>a{display:block;background:#f6f6ee;border:1px solid #d0d8ca;border-radius:10px;overflow:hidden;color:#294f44;text-decoration:none;transition:border-color .15s}.hero-location-preview>a:hover{border-color:#57735c}.hero-preview-heading{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;font-size:17px;font-weight:700;border-bottom:1px solid #dce1d5;background:#fffef8}.hero-location-preview img{display:block;width:100%;height:auto}.hero-preview-caption{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 16px;border-top:1px solid #dce1d5;background:#fffef8;font-size:14px;font-weight:600;line-height:1.6}.hero-location-preview figcaption{text-align:right;font-size:11px;color:#66745f;line-height:1.6;margin-top:4px}.hero-copy>summary{font-size:16px;padding-block:12px}.hero .baseline{margin-top:18px;font-size:13px;gap:8px 24px}.yb-experience #development-map,#development-map{scroll-margin-top:92px}.hero-location-preview a{touch-action:manipulation}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr 1fr;gap:25px}.hero h1{font-size:37px}.hero .subtitle{font-size:18px}.hero-counts{gap:12px}.hero-counts>div{padding-left:10px}.hero-counts span{font-size:12px}.hero-preview-heading{font-size:16px;padding:12px}.hero-preview-caption{font-size:13px;padding:10px 12px}}
@media(max-width:650px){.hero.shell{padding-block:25px 18px}.hero-grid{grid-template-columns:1fr;gap:22px}.hero h1{font-size:34px;max-width:none;margin-bottom:12px}.hero .eyebrow{margin-bottom:12px}.hero .subtitle{font-size:18px;line-height:1.7;margin-bottom:18px;max-width:none}.hero-map-cta{width:100%;min-height:52px;font-size:18px;padding:12px 18px}.hero-map-help{font-size:14px}.hero-counts{gap:0;display:grid;grid-template-columns:1fr 1fr 1.4fr;margin-top:18px;padding-top:12px}.hero-counts>div{padding-left:14px}.hero-counts strong{font-size:24px}.hero-counts span{font-size:13px;line-height:1.6}.hero-preview-heading{font-size:16px}.hero-preview-caption{font-size:13px}.hero-location-preview{margin-bottom:8px}.hero .baseline{font-size:12px;line-height:1.7;gap:2px}.yb-experience #development-map,#development-map{scroll-margin-top:78px}}
@media(max-width:360px){.hero h1{font-size:30px}.hero-counts span{font-size:12px}.hero-counts>div{padding-left:10px}.hero-preview-caption{font-size:12px}}
@media(prefers-reduced-motion:reduce){.hero-location-preview>a{transition:none}}

.yb-experience #development-map,#development-map{scroll-margin-top:0}
@media(max-width:650px){.yb-experience .hero.shell{padding-top:25px}}

@media(min-width:901px){.yb-experience .hero-grid{grid-template-columns:1.1fr .9fr;gap:36px}.fiber-hero-column{width:100%;max-width:480px;justify-self:end}}

@media(max-width:900px){.yb-experience .hero-grid{gap:25px}}
@media(max-width:650px){.yb-experience .hero-grid{gap:22px}}
