/* A native-scroll globe story. The compact SVG remains the default and failure state. */
.geography-section{position:relative}
.market-globe-canvas,.globe-stage-caption,.globe-story-progress{display:none}
.globe-stops{position:absolute;inset:0;pointer-events:none}
.globe-stops>span{position:absolute;top:0;left:0;width:1px;height:1px;scroll-margin-top:0}
.globe-intro-controls[hidden],.globe-intro[hidden],.globe-enable[hidden],#country-content[hidden]{display:none!important}
.market-globe-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.globe-enable{display:flex;align-items:center;gap:18px;margin:20px auto 0;padding:12px 18px;min-height:44px;background:transparent;border:1px solid #bca68b66;color:#e9ceb1;font:inherit;font-size:11px;cursor:pointer}
.globe-enable span{font-size:17px}
.globe-enable:focus-visible,.globe-intro-controls button:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
.geography-section.is-globe-ready{height:500svh;padding:0;overflow:visible;scroll-margin-top:0}
.is-globe-ready .geography-sticky{position:sticky;top:0;min-height:540px;height:100svh;padding:108px 0 22px;box-sizing:border-box;overflow:hidden}
.is-globe-ready .geography-sticky>.wrap{height:100%;display:flex;flex-direction:column}
.is-globe-ready .geography-heading{flex:none;align-items:flex-start;gap:24px}
.is-globe-ready .geography-heading .eyebrow{margin-top:8px}
.is-globe-ready .geography-heading h2{font-size:clamp(28px,3.05vw,48px);line-height:1.06;width:39%;padding:0}
.is-globe-ready .geography-layout{flex:1;min-height:0;margin-top:8px;grid-template-columns:1.6fr 1fr;gap:4vw;align-items:center}
.is-globe-ready .market-network{height:100%;min-height:360px;margin:0;isolation:isolate}
.is-globe-ready .market-globe-canvas{display:block}
.is-globe-ready .market-network>.network-heading,.is-globe-ready .network-map-svg,.is-globe-ready .market-network>.network-legend{display:none}
.is-globe-ready .globe-stage-caption{display:flex;position:absolute;inset:16px 5% auto;justify-content:space-between;z-index:1;pointer-events:none;color:#8298a6;font-size:8px;letter-spacing:.15em}
.globe-intro-controls{display:flex;gap:20px;border-bottom:1px solid #d7e4e21a;padding-bottom:5px;margin-bottom:4px}
.globe-intro-controls button{border:0;background:none;color:#9cafbd;font:inherit;font-size:10px;min-height:40px;padding:4px 0;cursor:pointer}
.globe-intro-controls button[aria-current="step"]{color:var(--orange)}
.globe-intro-controls span{font-size:8px;color:#78909d;margin-left:6px}
.is-globe-ready .country-panel{padding:0;position:relative;z-index:2}
.is-globe-ready .country-tabs{margin-bottom:21px;padding-bottom:7px;gap:5px 18px}
.is-globe-ready .country-tabs button{font-size:10px;min-height:37px}
.is-globe-ready .country-panel h3{font-size:clamp(30px,3.3vw,48px);line-height:1.06;margin-bottom:17px}
.is-globe-ready .country-code{margin-bottom:13px}
.is-globe-ready #country-description,.globe-intro>p:not(.country-code):not(.globe-scroll-hint){font-size:13px;line-height:1.8;max-width:360px;color:#b9cbd5}
.is-globe-ready .country-focus{margin-top:20px;padding-left:15px}
.is-globe-ready .country-focus>p{font-size:11px;line-height:1.7;margin-top:6px}
.is-globe-ready .country-panel>.text-link{font-size:10px;margin-top:20px}
.globe-scroll-hint{display:flex;align-items:center;gap:13px;margin-top:30px;font-size:9px;color:#d6b18b}
.globe-scroll-hint span{font-size:16px}
.is-globe-ready .globe-story-progress{display:flex;align-items:center;gap:18px;font-size:8px;color:#a4b6c1;min-height:25px;margin-top:8px}
.globe-story-progress>i{display:block;width:80px;height:1px;background:#738d9b55;overflow:hidden}
.globe-story-progress b{display:block;height:100%;background:var(--orange);transform:scaleX(0);transform-origin:left}
.globe-story-progress>span:last-child{margin-left:auto;letter-spacing:.025em;color:#8098a6}
.is-globe-ready .geography-note{font-size:9px;line-height:1.5;margin-top:10px;padding-top:10px}
.is-globe-ready .globe-stops{display:block;position:absolute;inset:0;pointer-events:none}
.is-globe-ready .globe-stops>span{top:calc(var(--stop) * (100% - 100svh))}
[data-theme="light"] .globe-enable{color:#8b4229;border-color:#9a614166}
[data-theme="light"] .globe-intro-controls{border-color:#465d5d26}
[data-theme="light"] .globe-intro-controls button{color:#536c70}
[data-theme="light"] .globe-intro-controls button[aria-current="step"]{color:#9a4c2c}
[data-theme="light"] .globe-intro-controls span{color:#607676}
[data-theme="light"] .is-globe-ready .globe-stage-caption,[data-theme="light"] .globe-story-progress,[data-theme="light"] .globe-story-progress>span:last-child{color:#526d70}
[data-theme="light"] .globe-intro>p:not(.country-code):not(.globe-scroll-hint){color:#3e535a}
[data-theme="light"] .globe-scroll-hint{color:#9a4c2c}
@media(max-width:1100px) and (min-width:761px){
  .is-globe-ready .geography-layout{grid-template-columns:1.3fr 1fr;gap:3vw}
  .is-globe-ready .geography-heading h2{width:43%}
  .is-globe-ready .country-tabs{gap:4px 11px}
  .is-globe-ready .country-tabs button{font-size:9px}
}
@media(max-width:760px){
  .geography-section.is-globe-ready{height:470svh}
  .is-globe-ready .geography-sticky{padding:88px 0 15px;min-height:540px}
  .is-globe-ready .geography-heading{display:flex;align-items:center;gap:12px}
  .is-globe-ready .geography-heading .eyebrow{font-size:7px;max-width:105px;line-height:1.8;margin:0;display:block}
  .is-globe-ready .geography-heading .section-number{display:block;margin-bottom:3px}
  .is-globe-ready .geography-heading h2{font-size:27px;width:auto;flex:1;margin:0;text-align:right;line-height:1.1}
  .is-globe-ready .geography-layout{display:flex;flex-direction:column;align-items:stretch;gap:0;margin-top:3px}
  .is-globe-ready .market-network{height:auto;min-height:0;flex:1;max-height:330px;margin:0 -15px}
  .is-globe-ready .globe-stage-caption{top:10px;left:8%;right:8%;font-size:6px}
  .is-globe-ready .country-panel{flex:none;min-height:260px}
  .globe-intro-controls{gap:19px;padding-bottom:1px;margin-bottom:0}
  .globe-intro-controls button{font-size:10px;min-height:32px}
  .is-globe-ready .country-tabs{margin-bottom:12px;padding-bottom:3px;gap:5px;flex-wrap:nowrap;justify-content:space-between}
  .is-globe-ready .country-tabs button{min-height:34px;font-size:10px}
  .is-globe-ready .country-panel h3{font-size:29px;line-height:1.08;margin-bottom:10px}
  .is-globe-ready .country-code{font-size:7px;margin-bottom:8px}
  .is-globe-ready #country-description,.globe-intro>p:not(.country-code):not(.globe-scroll-hint){font-size:11px;line-height:1.65;max-width:none}
  .is-globe-ready .country-focus{margin-top:11px;padding-left:12px}
  .is-globe-ready .country-focus>span{font-size:7px}
  .is-globe-ready .country-focus>p{font-size:10px;line-height:1.6;margin-top:4px;max-width:none}
  .is-globe-ready .country-panel>.text-link{font-size:9px;margin-top:12px}
  .globe-scroll-hint{font-size:9px;margin-top:17px}
  .is-globe-ready .globe-story-progress{margin-top:6px;gap:10px;min-height:15px;font-size:7px}
  .globe-story-progress>i{width:60px}
  .globe-story-progress>span:last-child{display:none}
  .is-globe-ready .geography-note{font-size:8px;margin-top:7px;padding-top:7px;line-height:1.5}
}
@media(max-width:520px){
  .is-globe-ready .geography-sticky{padding-top:120px}
}
@media(max-height:700px){
  .is-globe-ready .geography-sticky{padding-top:88px;padding-bottom:10px}
  .is-globe-ready .geography-heading h2{font-size:26px}
  .is-globe-ready .market-network{min-height:0}
  .is-globe-ready .country-panel{min-height:0}
  .is-globe-ready .country-code{display:none}
  .is-globe-ready .country-panel h3{font-size:25px;margin-bottom:8px}
  .globe-intro-controls button{min-height:27px}
  .is-globe-ready .country-tabs{margin-bottom:10px;padding-bottom:2px}
  .is-globe-ready .country-tabs button{min-height:29px}
  .is-globe-ready .country-focus{margin-top:8px}
  .is-globe-ready .country-focus>p{font-size:10px;line-height:1.45;margin-top:3px}
  .is-globe-ready .country-panel>.text-link{margin-top:8px}
  .is-globe-ready .geography-note{padding-top:6px;margin-top:6px}
  .globe-scroll-hint{margin-top:15px}
}
@media(max-width:520px) and (max-height:700px){
  .is-globe-ready .geography-sticky{padding-top:116px}
  /* On short phones keep the globe and country copy, without repeating the section title. */
  .is-globe-ready .geography-heading,.is-globe-ready .globe-scroll-hint,.is-globe-ready .globe-story-progress{display:none}
  .is-globe-ready .geography-layout{margin-top:0}
  html[data-page="journey"] .is-globe-ready .country-panel h3{font-size:23px}
  html[data-page="journey"] .is-globe-ready .country-panel>.text-link{min-height:36px}
}
@media(max-width:360px){
  .is-globe-ready .geography-heading{display:none}
  .is-globe-ready .geography-layout{margin-top:0}
}
@media(prefers-reduced-motion:reduce){.market-globe-canvas{display:none!important}.globe-intro-controls button{transition:none!important}}

/* The last existing train viewport becomes the first globe frame. No extra scroll space. */
.experience.is-route-outgoing:after{content:"";position:fixed;inset:0;z-index:-2;background:#071721;pointer-events:none}
.experience.is-route-outgoing .scene-stage{transform:translate3d(0,var(--handoff-hold,0px),0);opacity:var(--handoff-train,1)}
.experience.is-route-outgoing .experience-interface,.experience.is-route-outgoing #chapter-3 .chapter-content{opacity:var(--handoff-outro,1)}
.experience.is-route-outgoing #chapter-3 .chapter-content:focus-within{opacity:1}
.geography-section.is-handoff{background:transparent!important}
.is-handoff .geography-sticky{transform:translate3d(0,var(--handoff-lift,0px),0);isolation:isolate}
.is-handoff .geography-sticky:before,.is-handoff .geography-sticky:after{content:"";position:absolute;inset:0;pointer-events:none}
.is-handoff .geography-sticky:before{z-index:-2;background:#071721;opacity:var(--handoff-dark,0)}
.is-handoff .geography-sticky:after{z-index:-1;background:#091b27;opacity:var(--handoff-surface,0)}
[data-theme="light"] .is-handoff .geography-sticky:after{background:#ece9e0}
.is-handoff .market-network{opacity:var(--handoff-globe,0);transform:scale(var(--handoff-globe-scale,.92));transform-origin:50% 50%}
.is-handoff :is(.geography-heading,.country-panel,.globe-stage-caption,.globe-story-progress,.geography-note){opacity:var(--handoff-copy,0)}
.is-handoff.handoff-copy-hidden :is(.geography-heading,.country-panel,.globe-stage-caption,.globe-story-progress,.geography-note){visibility:hidden}
@media(prefers-reduced-motion:reduce){.experience.is-route-outgoing .scene-stage,.is-handoff .geography-sticky,.is-handoff .market-network{transform:none!important}}
