.origin-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;margin-bottom:48px}.origin-intro h2{font:400 clamp(28px,3vw,42px)/1.2 Georgia,serif;margin:12px 0 22px}.origin-intro p{line-height:1.85}.origin-visit,.origin-scope{font-size:13px;color:#6c7168}.origin-scope summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}.origin-map{margin:0;background:#faf9f5;padding:16px;border:1px solid #ddd8cc}.origin-map svg{width:100%;height:auto}.origin-map text{font:12px system-ui;fill:#344e42}.origin-map figcaption{text-align:center;font-size:11px;letter-spacing:.07em;color:#74786f}.origin-tabs{display:flex;gap:8px;border-bottom:1px solid #d7d3c9;margin-bottom:32px}.origin-tabs a{flex:1;padding:18px 24px;text-decoration:none;border-bottom:3px solid transparent;font-size:17px}.origin-tabs [aria-selected=true]{border-color:#a95032;background:#f7f3ec;color:#8b412c}.origin-tabs a:focus-visible,.origin-pin:focus-visible{outline:3px solid #a95032;outline-offset:3px}.origin-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.origin-section-heading h2{font:400 clamp(28px,3vw,40px)/1.2 Georgia,serif;margin:12px 0}.origin-pan-controls{display:flex;gap:10px}.origin-pan-controls[hidden]{display:none}.origin-pan-controls button{height:44px;width:48px;border:1px solid #bdb9ab;background:#fff;color:#234335;font-size:24px;cursor:pointer}.origin-hint,.origin-image-note{font-size:12px;color:#666e65;line-height:1.7}.origin-viewer{margin:24px 0}.origin-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-color:#a95032 #efede8;cursor:grab;border:1px solid #dedbd3;touch-action:pan-x pan-y}.origin-scroll.is-dragging{cursor:grabbing}.origin-canvas{position:relative;width:max(100%,1800px);line-height:0}.origin-canvas>img{width:100%;height:auto;display:block;max-width:none;user-select:none}.origin-pin{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;display:grid;place-items:center;text-decoration:none;border:1px solid rgba(255,255,255,.85);border-radius:50%;background:rgba(255,255,255,.92);color:#7f3923;box-shadow:0 2px 8px #2224;font:600 13px/1 system-ui;transition:background .15s,transform .15s}.origin-pin:hover,.origin-pin:focus{background:#a95032;color:#fff;transform:translate(-50%,-50%) scale(1.12)}.origin-stop-index{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #ddd7ca;margin:26px 0 60px}.origin-stop-index a{display:flex;gap:12px;padding:16px 12px;text-decoration:none;font-size:13px;line-height:1.6}.origin-stop-index a:hover{background:#f7f3ec}.origin-stop-index span{color:#ab5a3b;font:italic 16px Georgia}.origin-directory-heading{font:400 30px Georgia,serif;margin:45px 0 20px}.origin-stop{display:grid;grid-template-columns:1fr 1.7fr;gap:40px;padding:32px 0;border-top:1px solid #dedbd2;scroll-margin-top:100px}.origin-stop h3{font:400 25px/1.3 Georgia,serif;margin:12px 0}.origin-stop p{line-height:1.85;margin-top:0}.origin-stop:target{background:#fcf8f1;outline:2px solid #d4ad8b;outline-offset:10px}.origin-address{font-size:12px;color:#74786f}.origin-stop-links{display:flex;gap:18px;flex-wrap:wrap;font-size:12px}.origin-stop-links a{text-underline-offset:4px}.origin-archive{margin:40px 0}.origin-photo{margin:0}.origin-photo img{width:100%;height:auto;display:block}.origin-photo figcaption{font-size:12px;line-height:1.7;color:#6c7168;margin-top:12px}.origin-photos{display:grid;grid-template-columns:1.2fr 1fr;gap:26px;align-items:start;margin:30px 0 50px}.origin-photos .origin-photo-image{background:#f4f3ef;aspect-ratio:4/5;display:grid;place-items:center}.origin-photos img{max-height:100%;object-fit:contain}.origin-connection{background:#f4f0e7;padding:30px 36px;margin:40px 0}.origin-connection p{max-width:760px;line-height:1.9}.origin-credits{border-top:1px solid #d8d2c4;margin-top:50px;padding:24px 0;font-size:12px;line-height:1.9;color:#6b7068}.origin-panel[hidden]{display:none}.origin-panel{scroll-margin-top:100px}.origin-route-card{border:1px solid #d7cfbf}.origin-route-card .route-preview{object-position:50% 75%!important}
@media(max-width:760px){.origin-intro{grid-template-columns:1fr;gap:22px;margin-bottom:30px}.origin-map{padding:8px}.origin-tabs a{padding:14px 8px;font-size:14px}.origin-canvas{width:1350px}.origin-stop-index{grid-template-columns:repeat(2,1fr);margin-bottom:35px}.origin-stop{grid-template-columns:1fr;gap:8px;padding:26px 0}.origin-photos{grid-template-columns:1fr;gap:28px}.origin-photos .origin-photo-image{aspect-ratio:auto}.origin-photos img{max-height:620px;object-fit:contain}.origin-connection{padding:22px}.origin-pin{width:42px;height:42px}.origin-map text{font-size:12px}}
@media(prefers-reduced-motion:reduce){.origin-pin{transition:none}}
/* Match the existing Wukang/Huaihai vertical street explorer. */
.origin-canvas{width:100%;line-height:0;margin-inline:auto}.origin-canvas svg{width:100%;height:auto;display:block}.origin-scroll{height:0;flex:1;min-height:0;overflow:auto;cursor:auto;scrollbar-gutter:stable;overflow-anchor:none;overscroll-behavior-x:contain}.origin-street-window{height:var(--origin-height,650px);display:flex;flex-direction:column;border:1px solid #c6c9b7;border-radius:6px;overflow:hidden;background:white}.origin-size-bar{display:flex;align-items:center;gap:12px;min-height:36px;font-size:12px;padding-left:12px;background:white;border-top:1px solid #d5d5c6}.origin-size-bar button{background:white;border:0;min-width:40px;min-height:36px;color:inherit;cursor:pointer}.origin-size-bar #originSizeReset{margin-left:auto}.origin-size-bar #originResize{font-size:24px;border-left:1px solid #d5d5c6;cursor:ns-resize;touch-action:none}.origin-building-region{fill:transparent;stroke:transparent;stroke-width:2;cursor:pointer;vector-effect:non-scaling-stroke}.origin-building-region.active,.origin-building-region:focus-visible{fill:#f6d79722;stroke:#f8df9a;stroke-width:3;filter:drop-shadow(0 0 3px #3c2916)}.origin-map-label{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:6px;max-width:43%;line-height:1.4;padding:5px 8px 5px 5px;border:1px solid #efe7d4;border-radius:3px;background:white;box-shadow:0 3px 10px #172e2640;font-size:11px;color:#234536;cursor:pointer}.origin-map-label span{background:#2b463b;color:white;font-size:9px;padding:3px}.origin-map-label b{font-weight:400}.origin-map-label.active{background:#fff6db;border-color:#f9dc9c}.origin-map-label.active span{background:#a95032}.origin-canvas.names-hidden .origin-map-label b{display:none}.origin-view-tools{display:flex;gap:8px;align-items:center;justify-content:flex-end;padding:10px 0;font-size:11px}.origin-view-tools button{background:white;border:1px solid #d5d5c6;min-height:34px;min-width:34px;color:inherit;cursor:pointer}.origin-view-tools output{min-width:40px;text-align:center}.origin-road-labels{fill:white;stroke:#20382b;stroke-width:3px;paint-order:stroke;font:11px Arial,sans-serif;pointer-events:none}.origin-story{position:fixed;right:24px;top:130px;z-index:50;width:310px;max-height:calc(100dvh - 160px);overflow:auto;background:white;box-shadow:0 14px 54px #172b2450;border:1px solid #ddd7c9;padding:24px;font-size:13px;line-height:1.8}.origin-story[hidden]{display:none}.origin-story h3{font:26px/1.3 Georgia,serif;margin:14px 0}.origin-story #originClose{position:absolute;top:8px;right:8px;background:white;border:0;font-size:25px;cursor:pointer}.origin-story #originStoryAddress{color:#74786f;font-size:12px}.origin-story #originNext{display:block;background:white;border:0;margin:20px 0 0;padding:0;color:inherit;cursor:pointer}.origin-stop-index{display:flex;overflow-x:auto;gap:8px;border:0;margin:12px 0}.origin-stop-index a{flex-shrink:0;border:1px solid #ddd7ca;border-radius:22px;padding:8px 12px;font-size:11px}.origin-viewer{position:relative}.origin-route-card .route-preview{object-position:50% 50%!important}
@media(max-width:760px){.origin-street-window{height:var(--origin-height,560px)}.origin-map-label{font-size:10px;gap:4px;padding:4px;max-width:48%}.origin-story{top:auto;bottom:12px;right:12px;width:min(310px,calc(100vw - 24px));max-height:42dvh;padding:20px}.origin-view-tools{flex-wrap:wrap;gap:5px}.origin-canvas{width:100%}}

.origin-profile-link{display:inline-flex;align-items:center;padding:12px 18px;background:#203c32;color:#fff;border:1px solid #203c32;text-decoration:none;font-weight:600;line-height:1.5}.origin-profile-link:hover{background:#35594a}.origin-profile-link:focus-visible{outline:3px solid #b7774d;outline-offset:3px}

.origin-story .origin-profile-link{display:flex;justify-content:center;margin-top:16px;width:100%;box-sizing:border-box}
