/* Photographic scale and a different motion composition for each chapter. */
.cinematic-hero{background:#091a2c;min-height:740px}
.hero-image{inset:-3%;transform:translateY(var(--hero-y,0px)) scale(var(--hero-scale,1.06))}
.hero-image img{object-fit:cover;object-position:64% 56%;opacity:1;animation:camera-arrive 9s ease-in-out infinite alternate;animation-play-state:paused}
.spectacle-active .hero-image img{animation-play-state:running}
.hero-dim{background:linear-gradient(90deg,#051326bd 0%,#06152665 52%,#03102012 100%),linear-gradient(0deg,#051225d9,transparent 60%)}
.hero-editorial{z-index:3;bottom:16%;opacity:1!important}.hero-editorial h1{max-width:1050px;text-shadow:0 3px 32px #030f2440}
.hero-emblem{position:absolute;width:clamp(160px,21vw,330px);top:6%;right:10%;z-index:1;pointer-events:none;transform:translateY(var(--scene-drift,0px))}
.hero-emblem svg{width:100%;height:auto;animation:emblem-float 4.2s ease-in-out infinite alternate;animation-play-state:paused}.spectacle-active .hero-emblem svg{animation-play-state:running}
.hero-streams{position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.7;transform:translateY(calc(var(--scene-drift,0px) * -.35))}.hero-streams svg{width:100%;height:100%}
.stream-bed{stroke-width:2;opacity:.2}.stream-run{stroke-width:5;stroke-linecap:round;stroke-dasharray:.16 .84;animation:stream-flow 4s linear infinite;animation-play-state:paused}.stream-thin{stroke-width:1.5;stroke-dasharray:.08 .12;opacity:.5;animation:stream-flow 8s linear infinite reverse;animation-play-state:paused}.spectacle-active .stream-run,.spectacle-active .stream-thin{animation-play-state:running}
.hero-aurora{opacity:.5}.hero-footnote{z-index:3}.hero-footnote b{display:inline-block;animation:scroll-cue 1.6s ease-in-out infinite;animation-play-state:paused}.spectacle-active .hero-footnote b{animation-play-state:running}.hero-actions .apk-download{box-shadow:0 8px 50px #07142555}
@keyframes camera-arrive{from{transform:scale(1.01) translateX(-.7%)}to{transform:scale(1.1) translateX(.7%)}}
@keyframes emblem-float{from{transform:translateY(-12px)}to{transform:translateY(12px)}}
@keyframes stream-flow{to{stroke-dashoffset:-1}}
@keyframes scroll-cue{50%{transform:translateY(6px)}}

#vision,#service-introduction,#team,#progress,#roadmap{position:relative;isolation:isolate}.vision-chapter{padding-bottom:0;overflow:clip}.vision-editorial{position:relative;z-index:2}.vision-editorial h2{max-width:1080px}.vision-badge{background:#dceaff;color:#225a9d}.vision-depth-mark{font-size:22vw;color:#3182f60c;writing-mode:horizontal-tb;top:20%;right:-8%}.connecting-path{height:150px}.path-draw{stroke-width:4;stroke-linecap:round}
.kinetic-type-band{margin:0 -8vw;background:#eaf2ff;height:clamp(100px,13vw,190px);overflow:hidden;display:flex;align-items:center;pointer-events:none}.kinetic-type-band>div{display:flex;flex:none;width:max-content;transform:translateX(var(--type-travel,0px))}.kinetic-type-band span{display:block;white-space:nowrap;font-size:clamp(64px,10vw,160px);line-height:1.1;letter-spacing:-.065em;font-weight:750;color:#2874df;animation:type-conveyor 24s linear infinite;animation-play-state:paused}.kinetic-type-band i{font-style:normal;color:#4aab90;font-weight:400;padding:0 .2em}.spectacle-active .kinetic-type-band span{animation-play-state:running}
@keyframes type-conveyor{to{transform:translateX(-100%)}}
.service-prologue{padding-bottom:40px;overflow:clip;background:linear-gradient(#fff,#f5f9ff)}.service-prologue>h2,.service-prologue>p{position:relative;z-index:1}.service-connections{display:none}.connection-universe{width:min(1080px,100%);margin:12px auto 0;transform:translateY(calc(var(--scene-drift,0px) * -.25));pointer-events:none}.connection-universe svg{display:block;width:100%;height:auto;overflow:visible}
.universe-orbit{stroke:#d6e5f4;stroke-width:1;stroke-dasharray:4 8}.universe-orbit.inner{stroke:#c6e0d9;stroke-dasharray:none}.universe-road{stroke:url(#universe-color);stroke-width:32;opacity:.34;stroke-linecap:round}.universe-flow{stroke:#539ce3;stroke-width:3;stroke-dasharray:.1 .9;stroke-linecap:round;animation:stream-flow 3.4s linear infinite;animation-play-state:paused}.universe-center{transform-origin:500px 165px;transform:scale(var(--universe-spread,.85))}.universe-center circle{fill:#27867c}.universe-satellite{transform-box:fill-box;transform-origin:center;animation:emblem-float 3s ease-in-out infinite alternate;animation-play-state:paused}.universe-satellite circle{fill:#fff;stroke:#d6e7ee;stroke-width:2}.satellite-b{animation-delay:-1.8s}.universe-dot{fill:#73b5ec}.spectacle-active .universe-flow,.spectacle-active .universe-satellite{animation-play-state:running}

.journey-scenes{height:245svh;min-height:1600px}.journey-stage{background:#0a2335}.shot-photo,.shot-local .shot-photo{width:100%!important;height:100%!important;left:0!important;object-fit:cover!important;opacity:1!important}.shot-comfort .shot-photo{object-position:38% 55%!important;transform:scale(var(--comfort-scale,1.1)) translateY(calc(var(--scene-drift,0px) * .2))}.shot-comfort .shot-shade{background:linear-gradient(90deg,#091c2b20,#081c2b50 38%,#071b2de6 78%)!important}.shot-local .shot-photo{object-position:62% 55%!important;transform:scale(1.06) translateX(var(--local-x,0px))}.shot-local .shot-shade{background:linear-gradient(90deg,#07192fed,#071c348a 54%,#0b203528)!important}.shot-local{clip-path:circle(var(--iris,0%) at 84% 48%)}.shot-copy{z-index:3}.shot-copy h2{text-shadow:0 3px 24px #06182740}.shot-copy p{max-width:560px}.route-choreography{height:80%;width:37%;left:5%;top:7%;opacity:1}.route-live{stroke:#beffe0;stroke-width:5}.route-traveler{stroke-width:7}.local-network{top:40%;right:23%;transform:scale(1.3)}.local-network>span{background:#eafff8;box-shadow:0 0 0 18px #aeffea12,0 0 0 50px #aeffea09}.network-wire{border-color:#a4d9f9a6;animation:network-orbit 18s linear infinite;animation-play-state:paused}.spectacle-active .network-wire{animation-play-state:running}.scene-footer{z-index:4}
@keyframes network-orbit{from{transform:rotate(35deg)}to{transform:rotate(395deg)}}

.log-chapter{isolation:isolate;background:#071b31;overflow:clip}.log-heading,.log-frame,.log-caption,.log-chapter .chapter-marker{position:relative;z-index:2}.log-atmosphere{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}.log-atmosphere i,.log-atmosphere b{position:absolute;width:85%;height:65%;border-radius:50%;left:-40%;top:20%;background:radial-gradient(ellipse,#117e925c,transparent 65%);transform:translateX(var(--scene-drift,0px))}.log-atmosphere b{left:60%;top:0;background:radial-gradient(ellipse,#325bff4a,transparent 68%)}.film-aperture{position:absolute;inset:0;z-index:2;pointer-events:none;display:flex;overflow:hidden}.film-aperture i{width:50%;height:100%;background:#071b31;transform:translateX(calc(var(--aperture-open,1) * -101%))}.film-aperture i+i{transform:translateX(calc(var(--aperture-open,1) * 101%))}.log-frame:focus-within .film-aperture{display:none}
.connected-team{overflow:clip;background:#fff}.connected-team .team-grid{position:relative;z-index:2}.connected-team .team-card{transform:translateY(var(--card-rise,0px))}.connected-team .portrait-frame{position:relative;border-radius:24px 24px 4px 4px}.portrait-frame:after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#ffffff40 47%,transparent 65%);transform:translateX(-130%);pointer-events:none;animation:portrait-light 5.5s ease-in-out infinite;animation-play-state:paused}.spectacle-active .portrait-frame:after{animation-play-state:running}.team-card:nth-child(2) .portrait-frame:after{animation-delay:1s}.team-linework{position:absolute;right:-2%;top:6%;z-index:0;pointer-events:none;color:#edf4fc;font-size:clamp(80px,11vw,165px);font-weight:800;line-height:.9;letter-spacing:-.07em;transform:translateY(var(--scene-drift,0px))}.team-linework i{display:block;height:4px;width:70%;margin-top:30px;background:linear-gradient(90deg,#80d8c9,#90b4ed);transform:scaleX(var(--scene-enter,.3));transform-origin:right}.connected-team .section-heading,.connected-team>.section-description,.mentor-line{position:relative;z-index:1}
@keyframes portrait-light{0%,45%{transform:translateX(-130%)}75%,100%{transform:translateX(130%)}}
.team-card h3:after{content:'';display:block;width:44px;height:3px;margin-top:10px;background:#3c83de;transform-origin:left;transition:width 250ms ease}.team-card:hover h3:after{width:86px}

.progress-section{overflow:clip;background:#f2f6fc}.progress-card{position:relative}.progress-card:before{content:'';position:absolute;top:-2px;left:0;right:0;height:3px;background:linear-gradient(90deg,#2ba68f,#5484ec);transform:scaleX(var(--scene-enter,0));transform-origin:left}.survey-card{border-radius:28px;background:#fff;box-shadow:0 18px 65px #22457408;overflow:hidden}.survey-visual{position:relative;isolation:isolate;min-height:315px;padding-top:45px;display:flex;flex-direction:column;justify-content:start;gap:0}.survey-number{position:relative;z-index:1;display:flex;align-items:baseline;gap:10px;margin:0}.survey-number>span{display:inline;text-align:left}.survey-orbit{position:absolute;top:0;left:50%;width:260px;height:260px;transform:translateX(-50%);z-index:-1;pointer-events:none}.survey-orbit svg{width:100%;height:100%;transform:rotate(-90deg)}.survey-orbit circle{fill:none;stroke-width:7}.survey-orbit-base{stroke:#e9f0fa}.survey-orbit-value{stroke:#368e92;stroke-linecap:round;stroke-dasharray:var(--survey-draw,23) 28}.dot-grid{position:relative;z-index:1;margin-top:90px;flex:none;align-self:center}.dot-grid i{box-shadow:none;animation:none!important}
.roadmap-section{background:#0b1e39;overflow:clip}.city-horizon{position:absolute;inset:auto -3% -3%;height:58%;display:flex;align-items:end;gap:1.8%;z-index:-1;opacity:.48;pointer-events:none;transform:translateY(calc(var(--scene-drift,0px) * -.8))}.city-horizon i{display:block;flex:1;height:var(--height);border:1px solid #81baf836;border-bottom:0;background:linear-gradient(#4187d619,#2a80af02);border-radius:5px 5px 0 0;transform:translateY(calc((1 - var(--scene-enter,1)) * 60px))}.roadmap-ghost-year{color:#d4edff07;-webkit-text-stroke:1px #b5d8ff30;font-size:32vw;bottom:1%}.roadmap-sticky{z-index:1}.roadmap-row:before{display:block!important}.roadmap-row.is-current h3{color:#d1fff3!important}.roadmap-ticks i{height:3px}
.home-outro{background:radial-gradient(ellipse at 85% 0,#126b70,#0b243d 65%);isolation:isolate}.home-outro .eyebrow,.home-outro h2,.home-outro p,.home-outro .button{position:relative;z-index:2}.outro-landscape{opacity:.25!important;transform:translateY(var(--scene-drift,0px)) scale(1.12)}.outro-rays{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}.outro-rays i{position:absolute;left:50%;top:50%;width:80vw;height:80vw;margin:-40vw;border:1px solid #96f5e259;border-radius:40%;animation:outro-current 12s linear infinite;animation-play-state:paused}.outro-rays i:nth-child(2){width:100vw;height:100vw;margin:-50vw;border-radius:45%;animation-duration:16s;animation-direction:reverse;border-color:#9ac9ff35}.outro-rays i:nth-child(3){width:120vw;height:120vw;margin:-60vw;border-radius:48%;animation-duration:22s;border-color:#9ac9ff20}.spectacle-active .outro-rays i{animation-play-state:running}
@keyframes outro-current{to{transform:rotate(360deg)}}
.faq-section summary{transition:color 160ms ease}.faq-section summary:hover{color:#3182f6}
.survey-visual{align-items:center;padding-top:70px;min-height:340px}
/* The photographic wipe never cuts through reading text. */
.shot-local{clip-path:none;background:transparent}
.shot-local .shot-photo,.shot-local .shot-shade{clip-path:circle(var(--iris,0%) at 84% 48%)}
.shot-comfort .shot-copy{opacity:var(--comfort-copy,1)}
.shot-local .shot-copy{opacity:var(--local-copy,1)}
.shot-local .local-network{opacity:var(--local-visible,1)}

@media(max-width:900px){.hero-emblem{right:6%;top:4%;width:220px}.hero-editorial{bottom:16%}.team-linework{top:9%;font-size:100px;opacity:.6}.local-network{right:19%;transform:scale(1)}.survey-card{gap:30px}.survey-visual{min-width:220px}.survey-orbit{width:230px;height:230px}.survey-number strong{font-size:100px}}
@media(max-width:600px){
 .cinematic-hero{min-height:770px}.hero-image img{opacity:1;object-position:65% 40%}.hero-dim{background:linear-gradient(0deg,#06172aee 8%,#06172a70 62%,#06172a18)}.hero-emblem{width:150px;top:3%;right:6%}.hero-streams{opacity:.55}.hero-editorial{bottom:145px}.hero-editorial h1{font-size:clamp(49px,13vw,78px)}.hero-caption p{font-size:17px}
 .vision-depth-mark{font-size:35vw;top:24%}.kinetic-type-band{margin:0 -25px;height:112px}.kinetic-type-band span{font-size:76px}.connecting-path{height:100px}.service-prologue{padding-bottom:30px}.connection-universe{width:calc(100% + 24px);max-width:none;margin:26px -12px 0}.universe-road{stroke-width:38}
 .journey-scenes{height:auto;min-height:0}.journey-shot{min-height:880px!important;height:auto}.shot-photo,.shot-local .shot-photo{height:62%!important;width:100%!important;object-position:58% 50%!important}.shot-shade,.shot-comfort .shot-shade,.shot-local .shot-shade{background:linear-gradient(180deg,#081b2b08 10%,#091e3038 32%,#091e30fa 61%,#091e30 100%)!important}.shot-local .shot-shade{background:linear-gradient(180deg,#091d3808 10%,#091d3850 35%,#0b203afa 62%,#0b203a 100%)!important}.shot-copy,.shot-local .shot-copy{bottom:55px!important;top:auto!important}.route-choreography{height:43%;width:65%;left:13%;top:3%}.local-network{right:48%;top:21%;transform:scale(1)}.shot-copy h2{font-size:34px}.shot-copy p{font-size:14px;line-height:1.85}
 .log-chapter{padding-left:16px;padding-right:16px}.log-frame{transform:scale(calc(.93 + var(--aperture-open,1) * .07))!important;border-radius:14px!important}.connected-team .portrait-frame{border-radius:16px 16px 4px 4px}.team-linework{right:-8%;top:20%;font-size:95px;opacity:.65}.team-card h3:after{width:30px;height:2px}.survey-card{padding:26px 22px;border-radius:20px}.survey-visual{padding-top:40px;min-height:290px;margin-top:30px;min-width:0}.survey-orbit{width:225px;height:225px}.survey-number strong{font-size:90px}.dot-grid{margin-top:85px}
 .survey-visual{padding-top:65px;min-height:320px}.dot-grid{margin-top:75px}.shot-copy,.shot-local .local-network{opacity:1!important}.shot-local .shot-photo,.shot-local .shot-shade{clip-path:none}
 .city-horizon{height:40%;gap:2.5%;opacity:.6}.city-horizon i:nth-child(3n){display:none}.outro-rays i{width:140vw;height:140vw;margin:-70vw}.outro-rays i:nth-child(2){width:170vw;height:170vw;margin:-85vw}.outro-rays i:nth-child(3){width:200vw;height:200vw;margin:-100vw}
}
/* Shared scroll scheduler; ambient layers pause outside the viewport. */
.motion-lite .hero-image img,.motion-lite .hero-emblem svg{animation:none}.motion-lite .hero-streams{opacity:.5}.motion-lite .stream-thin,.motion-lite .universe-orbit.inner,.motion-lite .outro-rays i:nth-child(n+2){display:none}.motion-lite .hero-aurora,.motion-lite .portrait-frame:after{display:none}.motion-lite .kinetic-type-band span{animation-duration:32s}.motion-lite .log-frame{transform:none!important}.motion-lite .shot-local{clip-path:none!important;opacity:var(--local-visible,0)}.motion-lite .survey-card{box-shadow:none}
.page-hidden .hero-image img,.page-hidden .hero-emblem svg,.page-hidden .hero-footnote b,.page-hidden .stream-run,.page-hidden .stream-thin,.page-hidden .kinetic-type-band span,.page-hidden .universe-flow,.page-hidden .universe-satellite,.page-hidden .network-wire,.page-hidden .portrait-frame:after,.page-hidden .outro-rays i{animation-play-state:paused!important}
.motion-lite .shot-local .shot-photo,.motion-lite .shot-local .shot-shade{clip-path:none}
@media(max-width:600px){.motion-lite .shot-local{opacity:1}}
@media(prefers-reduced-motion:reduce){
 .hero-image img,.hero-emblem svg,.hero-footnote b,.stream-run,.stream-thin,.kinetic-type-band span,.universe-flow,.universe-satellite,.network-wire,.portrait-frame:after,.outro-rays i{animation:none!important}
 .hero-emblem,.hero-streams,.kinetic-type-band>div,.connection-universe,.connected-team .team-card,.team-linework,.city-horizon,.city-horizon i,.outro-landscape{transform:none!important}.hero-image img{transform:none!important}.kinetic-accent,.film-aperture,.outro-rays{display:none}.shot-local,.motion-lite .shot-local{clip-path:none!important;opacity:1!important}.journey-scenes{height:auto;min-height:0}.journey-stage{height:auto;min-height:0;position:relative;top:0}.journey-shot{position:relative;min-height:800px}.log-frame{transform:none!important}.survey-orbit-value{stroke-dasharray:23 28}.dot-grid i{transform:none!important}.team-card h3:after{transition:none}
 .shot-copy,.shot-local .local-network{opacity:1!important}.shot-local .shot-photo,.shot-local .shot-shade{clip-path:none}
}

.roadmap-layout,.roadmap-line,.roadmap-row,.roadmap-row>div{min-width:0;max-width:100%}.roadmap-row h3{overflow-wrap:anywhere}.roadmap-sticky strong{max-width:100%}

.roadmap-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.roadmap-sticky{min-width:0;max-width:100%}@media(max-width:800px){.roadmap-layout{grid-template-columns:minmax(0,1fr)}}

.section-wrap h2,.section-wrap h3{overflow-wrap:anywhere;min-width:0;max-width:100%}
