/* The founders stay on the promenade; their city carries the story. */
.journey{height:220svh;background:var(--paper)}
.journey .journey-sticky{min-height:0;max-height:none;height:calc(100svh - var(--header));overflow:clip;display:flex;flex-direction:column}
.journey .scene-top{padding-block:25px 22px;align-items:end;flex-shrink:0}
.journey .scene-top :is(h1,h2){font-size:clamp(30px,3.2vw,49px);letter-spacing:-.05em;line-height:1.02}
.journey .scene-top :is(h1,h2) span{color:#61706c}.journey .scene-top .eyebrow{margin-bottom:12px;font-size:11px}
.journey-intro{max-width:420px;width:36%;font-size:14px;line-height:1.65}.journey-intro .skip-scene{font-size:12px;display:inline-block;margin-top:8px}
.journey .journey-landscape{flex:1;min-height:310px;margin:0;overflow:hidden;border-block:1px solid #29344933;isolation:isolate}
.city-window{position:absolute;inset:0;overflow:hidden;background:#65cbd0}.city-world{position:absolute;top:0;bottom:0;left:0;will-change:transform}
.city-art,.city-landmarks{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center bottom;max-width:none}
.city-landmarks{overflow:visible;pointer-events:none}.city-landmarks g{opacity:0;transition:opacity .65s ease;fill:#fff2a038;stroke:#fff5ce;stroke-width:3}.city-landmarks g.is-current{opacity:1;filter:drop-shadow(0 0 10px #ffdf86)}.city-landmarks .landmark-detail{fill:none;stroke:#ffe39d;stroke-width:2}
.scene-location{position:absolute;left:5%;top:20px;z-index:2;background:var(--paper);border:1px solid #29344944;padding:6px 10px;font-size:10px;text-transform:uppercase;letter-spacing:.065em;box-shadow:2px 2px #29344911}.location-dot{display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:#237c74}
.founder-pair{position:absolute;left:19%;bottom:var(--feet-bottom,60px);width:340px;height:clamp(180px,26svh,275px);z-index:4;display:flex;align-items:end;gap:1px;pointer-events:none}
.journey .walker{position:relative;left:auto;bottom:auto!important;width:50%!important;height:100%;transform:none;display:block;background:none;pointer-events:auto;line-height:1;padding:0;border:0;overflow:visible}
.journey .walker-gautam{left:auto;bottom:auto;z-index:4}.journey .walker:focus-visible{outline:2px solid var(--paper);outline-offset:8px;background:#fff7e322}
.journey .walker>span{background:none;color:inherit;padding:0;margin:0;border-radius:0;box-shadow:none;transform:none;white-space:normal;width:auto}
.journey .walker .journey-figure{height:100%;width:100%;display:block;position:relative;z-index:2}.walk-frame{height:100%;width:100%;position:absolute;bottom:0;left:0;overflow:visible}
.journey .walker .foot-shadow{position:absolute;z-index:1;bottom:-4px;left:23%;width:62%;height:8px;display:block;background:#13213648;border-radius:50%;filter:blur(2px)}
.journey .walker .founder-name{position:absolute;left:50%;top:calc(100% + 11px);transform:translateX(-50%);background:var(--paper);color:var(--ink);border:1px solid #2934496b;padding:7px 24px 7px 10px;white-space:nowrap;text-align:left;font-size:12px;font-weight:500;line-height:1.3;box-shadow:2px 2px #29344918}
.journey .walker .founder-name b{font-size:9px;text-transform:uppercase;letter-spacing:.055em;display:block;font-weight:400;padding:2px 0 0}.founder-name i{position:absolute;right:8px;top:11px;font-style:normal;font-size:16px}.walker-gautam .founder-name{border-top:2px solid var(--coral)!important}.walker-nigel .founder-name{border-top:2px solid #21838a!important}.journey .walker:hover .founder-name{background:var(--jade)}
.achievement-card{position:absolute;right:5%;top:22px;z-index:5;width:355px;padding:22px 24px;background:#fff7e3f5;border:1px solid #29344970;box-shadow:5px 5px #29344920;backdrop-filter:blur(8px)}
.achievement-kicker{display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--line);padding-bottom:11px;margin-bottom:13px}.achievement-number{color:#9a4224}.achievement-category{text-align:right}
.achievement-metric{font-family:Space,Arial,sans-serif;font-size:clamp(38px,3.8vw,58px);line-height:1.05;letter-spacing:-.06em;white-space:nowrap}.achievement-metric span{font-family:Geist,Arial,sans-serif;display:inline-block;margin-left:4px;font-size:18px;letter-spacing:-.025em}.journey[data-stop="4"] .achievement-metric span,.journey[data-stop="6"] .achievement-metric span{display:block;font-size:13px;margin:6px 0 0}
.achievement-title{font-size:22px;margin:15px 0 10px;line-height:1.13;letter-spacing:-.03em}.achievement-copy{font-size:13px;line-height:1.6}.achievement-relevance{border-top:1px solid var(--line);padding-top:12px;margin-top:17px}.achievement-relevance>span{font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:#68716a}.achievement-relevance p{font-size:12px;line-height:1.5;margin-top:5px}
.landmark-pin{position:absolute;z-index:3;pointer-events:none;transform:translate(-50%,-100%);display:flex;align-items:center;flex-direction:column}.landmark-pin>span{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;border:1px solid var(--ink);background:var(--cream);box-shadow:0 0 0 5px #fff7e34d;font-family:Space;font-size:12px}.landmark-pin i{height:22px;width:1px;background:var(--paper)}
.journey-scroll-hint{position:absolute;left:5%;bottom:14px;z-index:6;font-size:10px;letter-spacing:.04em;color:var(--paper);text-shadow:0 1px 4px #293449}.journey-scroll-hint i{font-style:normal;padding-left:10px}
.journey .journey-bottom{display:block;padding:16px 0 14px;flex-shrink:0}.journey-rail-heading{display:flex;justify-content:space-between;align-items:center;font-size:11px}.journey-instruction{font-size:10px;color:var(--muted)}
.journey .journey-controls{position:relative;display:grid;grid-template-columns:repeat(7,1fr);gap:0;margin-top:13px;isolation:isolate}.journey .journey-controls:before,.journey .journey-controls:after{content:'';position:absolute;top:15px;left:0;width:85.714%;height:1px;background:#a6b6a6;z-index:-1}.journey .journey-controls:after{width:calc(var(--route-progress,0%) * .85714);background:#bd502a}
.journey .journey-controls button{position:relative;display:flex;flex-direction:column;align-items:start;gap:7px;border:0;background:none;padding:0 10px 0 0;min-width:0;font-size:12px;line-height:1.4;color:#6c756e;min-height:58px}
.journey .journey-controls .chapter-node{width:30px;height:30px;display:grid;place-items:center;border:1px solid #a6b6a6;background:var(--paper);border-radius:50%;font-size:11px;transition:background .2s,border-color .2s;max-width:none}.journey .journey-controls .chapter-label{font-size:12px;max-width:none;display:block;letter-spacing:-.01em}
.journey .journey-controls button[aria-pressed=true]{color:var(--ink)}.journey .journey-controls button[aria-pressed=true] .chapter-node{background:var(--coral);border-color:var(--ink);box-shadow:0 0 0 4px #f4764317}.journey .journey-controls button.is-past .chapter-node{background:var(--jade);border-color:#659782}.journey .journey-controls button:hover:not([aria-pressed=true]) .chapter-node{border-color:var(--ink);background:var(--jade)}
.journey-footnote{display:flex;justify-content:space-between;gap:20px;margin-top:12px;font-size:9px;color:#626e67;letter-spacing:.015em}
@media(min-width:1600px){.achievement-card{width:400px;padding:27px}.achievement-title{font-size:25px}.achievement-copy{font-size:15px}.achievement-relevance p{font-size:14px}.founder-pair{width:420px;left:20%;height:clamp(240px,28svh,320px)}}
@media(max-width:1050px) and (min-width:761px){.journey .scene-top :is(h1,h2){font-size:34px}.journey-intro{font-size:12px;width:40%}.achievement-card{right:4%;width:315px;padding:17px 20px}.achievement-metric{font-size:43px}.achievement-title{font-size:20px}.achievement-copy{font-size:12px}.achievement-relevance{margin-top:12px}.founder-pair{left:12%;width:310px}}
@media(max-width:760px){.journey{height:auto}.journey .journey-sticky{position:relative;top:0;min-height:0;height:auto;overflow:hidden}.journey .scene-top{display:block;padding-block:30px 24px}.journey .scene-top :is(h1,h2){font-size:36px}.journey-intro{width:auto;max-width:580px;margin-top:17px;font-size:14px}.journey .journey-landscape{height:auto;min-height:0;flex:none;padding-top:330px;overflow:visible}.city-window{height:330px;bottom:auto}.scene-location{top:14px;left:6%;font-size:9px}.founder-pair{height:195px;width:270px;left:calc(50% - 145px);top:calc(330px - var(--feet-bottom) - 195px);bottom:auto}.journey .walker .founder-name{font-size:11px;top:calc(100% + 8px);padding:5px 23px 5px 9px}.journey .walker .founder-name b{font-size:8px}.achievement-card{position:relative;top:auto;right:auto;margin:0;border:0;border-top:1px solid var(--ink);width:100%;padding:24px 6%;background:var(--cream);box-shadow:none;backdrop-filter:none;min-height:325px}.achievement-kicker{font-size:10px}.achievement-metric{font-size:48px}.achievement-title{font-size:24px;margin-top:13px}.achievement-copy{font-size:14px;max-width:650px}.achievement-relevance{margin-top:15px;padding-top:12px}.achievement-relevance p{font-size:13px}.journey-scroll-hint{display:none}.journey .journey-bottom{padding-block:20px}.journey-instruction{display:none}.journey .journey-controls{margin-top:17px}.journey .journey-controls .chapter-label{font-size:10px;line-height:1.35}.journey .journey-controls button{padding-right:9px}.journey .journey-controls .chapter-node{width:28px;height:28px;font-size:10px}.journey-footnote{font-size:9px;line-height:1.5}.journey-footnote>span+span{display:none}}
.motion-paused .journey{height:auto}.motion-paused .journey-sticky{height:auto;position:relative;top:0}.motion-paused .journey-landscape{flex:none;min-height:420px;height:420px}.motion-paused .journey-scroll-hint{display:none}
@media(max-width:760px){.motion-paused .journey-landscape{height:auto;min-height:0}}
@media(prefers-reduced-motion:reduce){.city-world{will-change:auto}.city-landmarks g,.journey .chapter-node{transition:none}}
@media(max-width:760px){
 .journey .walker .founder-name{top:auto;bottom:calc(100% + 8px)}
 .journey .journey-landscape>.journey-bottom{position:relative;background:var(--paper);z-index:6;margin:0;width:100%;padding:18px 6% 14px;border-top:1px solid var(--line)}
 .journey .journey-landscape>.journey-bottom .journey-footnote{display:none}
 .journey .journey-landscape>.journey-bottom .journey-controls{margin-top:12px}
 .scene-location{font-size:8px;padding:5px 8px}
 .landmark-pin{display:none}
}

.journey[data-stop="4"] .achievement-metric{font-size:clamp(28px,2.7vw,39px);white-space:normal}
.journey[data-stop="1"] .achievement-metric{font-size:clamp(30px,3vw,42px);white-space:normal}
.journey[data-stop="1"] .achievement-metric span{display:block;font-family:Space,Arial,sans-serif;font-size:clamp(25px,2.4vw,34px);line-height:1.15;margin:7px 0 0;letter-spacing:-.045em}
@media(max-width:760px){.journey .journey-controls{grid-template-columns:repeat(4,1fr);row-gap:14px}.journey .journey-controls:before,.journey .journey-controls:after{display:none}.journey .journey-controls button{min-height:60px}}

/* Repeating harbour layers: every building stays on the far shore. */
.city-tile{position:absolute;top:0;bottom:0;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 160px,#000);-webkit-mask-image:linear-gradient(to right,transparent,#000 160px,#000)}
.city-tile:first-child{mask-image:none;-webkit-mask-image:none}
.city-tile .city-art,.city-tile .city-landmarks{width:100%;height:auto;top:auto;bottom:0;object-fit:contain}
.city-world{overflow:visible}
.city-landmarks g{stroke-width:2;fill:#fff2a020}
