@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&display=swap');
:root{--ink:#17252b;--teal:#327d7d;--paper:#f6f8f7}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{margin:0;color:var(--ink);background:var(--paper);font:15px 'DM Sans',Arial,sans-serif;overflow-x:clip}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}header{position:absolute;left:0;right:0;top:0;z-index:20;padding:28px 3%;display:flex;align-items:center;justify-content:space-between}.logo img{width:250px;height:auto;display:block}nav{display:flex;background:#ffffffed;border:1px solid #17252b77;border-radius:9px;overflow:hidden}nav>a,nav>button{padding:16px 24px;background:none;color:var(--ink);border:0;font-weight:550}nav>button{border-left:1px solid #17252b66}nav a:hover,nav button:hover{background:#e3eeeb}.journey{height:420svh;position:relative}.stage{height:100svh;min-height:680px;position:sticky;top:0;overflow:hidden;background:#e9efef}.world{position:absolute;width:max(100%,150svh);aspect-ratio:1.5;left:50%;top:50%;transform:translate(-50%,-50%) scale(var(--zoom,1)) translate(var(--pan-x,0%),var(--pan-y,0%));transform-origin:50% 50%;will-change:transform}.neighborhood{display:block;width:100%;height:100%;object-fit:cover}.van{position:absolute;width:15%;left:var(--van-x,13%);top:var(--van-y,65%);transform:translate(-50%,-70%) scale(var(--van-scale,1));will-change:left,top,transform;z-index:4}.van img{width:100%;position:relative;z-index:2;filter:drop-shadow(2px 6px 4px #0003)}.van-shadow{position:absolute;left:5%;bottom:5%;width:95%;height:15%;border-radius:50%;background:#182b2a22;filter:blur(7px);transform:rotate(10deg)}.scene-shade{position:absolute;inset:0;background:linear-gradient(#f6f8f77a,transparent 42%,#10282b26);pointer-events:none}.coordinates{position:absolute;top:120px;left:3%;right:3%;display:flex;justify-content:space-between;font:10px monospace;letter-spacing:1px;color:#344447}.stage-intro{position:absolute;top:22%;left:6%;opacity:var(--intro-opacity,1);transform:translateY(var(--intro-y,0px));will-change:opacity,transform}.stage-intro>p{font-size:13px}.stage-intro h1{font-size:clamp(55px,6vw,96px);line-height:1.01;letter-spacing:-5px;font-weight:500;margin:20px 0 25px}.stage-intro>div{line-height:1.6;font-size:16px}.chapter-caption{position:absolute;left:10%;right:10%;bottom:115px;background:#fdfefdf2;border:1px solid #17252b22;padding:30px 34px;display:flex;gap:35px;align-items:start;box-shadow:0 8px 30px #17252b0a;transform:translateY(var(--caption-y,0px));transition:background .3s}.chapter-number{font:11px monospace;white-space:nowrap;letter-spacing:1px;padding-top:5px;color:#517373}.chapter-caption h2{font-size:clamp(24px,2.8vw,40px);line-height:1.12;letter-spacing:-1.3px;margin:0 0 12px;font-weight:500}.chapter-caption p{font-size:14px;max-width:670px;line-height:1.6;margin:0;color:#536166}.chapter-symbol{margin-left:auto;font-size:35px;line-height:1}.chapter-caption.changing h2,.chapter-caption.changing p{animation:caption-enter .6s ease both}.journey-footer{position:absolute;left:3%;right:3%;bottom:50px;display:flex;justify-content:space-between;align-items:center}.scroll-hint{font:10px monospace;letter-spacing:1px;color:#223a39}.timeline{display:flex;align-items:center;gap:12px}.timeline button{font:10px monospace;background:#fff9;border:1px solid #17252b22;color:#526262;border-radius:4px;padding:10px}.timeline button.current{background:var(--ink);color:white}.timeline button span{margin-left:6px}.timeline i{width:30px;height:1px;background:#17252b55}.scene-disclaimer{position:absolute;right:3%;bottom:13px;font-size:9px;color:#344747;background:#ffffffa8;padding:4px 7px}.home-marker{position:absolute;left:80%;top:52%;transform:translate(-50%,-50%);opacity:var(--arrived,0);transition:opacity .4s;z-index:5}.home-marker>span{display:grid;place-content:center;background:var(--teal);color:white;width:36px;height:36px;border-radius:50%;box-shadow:0 0 0 10px #327d7d22}.home-marker:after{content:'';position:absolute;inset:-18px;border:1px solid #327d7d77;border-radius:50%;animation:arrival-ring 2s ease-out infinite}.service-section{padding:100px 5%;background:#15282b;color:#f6f8f7;position:relative}.section-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:20px 10%;margin-bottom:65px}.eyebrow{font:10px monospace;letter-spacing:1.3px}.section-heading>.eyebrow{grid-column:1/-1}.section-heading h2,.real-team h2,.end h2{font-size:clamp(38px,4.6vw,70px);font-weight:450;line-height:1.08;letter-spacing:-2.5px;margin:15px 0}.section-heading p{line-height:1.8;color:#b5c4c2;align-self:end}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-grid article{border-top:1px solid #d5e2de44;padding-top:20px}.service-grid img{width:100%;height:260px;object-fit:cover;filter:saturate(.7);margin-bottom:25px}.service-grid article>span{font:10px monospace;letter-spacing:1px;color:#abc8c3}.service-grid h3{font-size:26px;font-weight:450;letter-spacing:-.7px;max-width:300px}.service-grid p{color:#b5c4c2;line-height:1.7;min-height:70px}.service-grid button{border:0;border-bottom:1px solid #a6c2bd;background:none;color:white;padding:10px 0}.real-team{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding:100px 6%;background:#edf1ee}.real-team img{width:100%;min-height:430px;object-fit:cover}.real-team p{line-height:1.8;color:#586763;margin:30px 0}.real-team button,.end button,.close-contact{background:var(--ink);color:white;padding:16px 24px;border:0;border-radius:5px}.end{padding:120px 6%;background-color:#f8faf9;background-image:linear-gradient(#17252b09 1px,transparent 1px),linear-gradient(90deg,#17252b09 1px,transparent 1px);background-size:26px 26px}.end h2{font-size:clamp(45px,6vw,90px)}.end p{margin:25px 0 35px}footer{padding:45px 4%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #17252b22;font-size:11px}footer img{width:200px;height:auto}footer small{width:100%;color:#71807b}.motion-control{position:fixed;z-index:30;bottom:12px;left:20px;background:#ffffffdb;border:1px solid #17252b55;border-radius:5px;font-size:10px;padding:9px 12px;color:var(--ink)}dialog{max-width:440px;background:#f8faf9;color:var(--ink);border:1px solid #c5d1cc;border-radius:10px;padding:35px}dialog::backdrop{background:#17252b88}dialog h2{font-weight:500;font-size:35px;letter-spacing:-1.5px;line-height:1.1}dialog p{line-height:1.7}.close-dialog{position:absolute;right:15px;top:10px;background:none;border:0;font-size:25px}.reveal{opacity:0;transform:translateY(35px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}.paused *{animation-play-state:paused!important}.paused .reveal{opacity:1;transform:none}@keyframes caption-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes arrival-ring{from{transform:scale(.7);opacity:.9}to{transform:scale(1.5);opacity:0}}@media(max-width:700px){header{padding:22px 5%}.logo img{width:175px}nav>a{display:none}nav>button{border:0;padding:12px;font-size:11px}.journey{height:380svh}.stage{min-height:700px}.coordinates{top:93px;font-size:8px}.coordinates span:last-child{display:none}.stage-intro{top:20%;left:6%}.stage-intro h1{font-size:59px;letter-spacing:-3px}.stage-intro>div{font-size:13px}.chapter-caption{left:5%;right:5%;bottom:135px;padding:22px;gap:15px}.chapter-number{font-size:9px}.chapter-caption h2{font-size:27px;letter-spacing:-1px}.chapter-caption p{font-size:12px;line-height:1.5}.chapter-symbol{display:none}.journey-footer{bottom:55px;justify-content:center}.scroll-hint{display:none}.timeline{gap:5px}.timeline button{font-size:9px;padding:9px 6px}.timeline button span{margin-left:3px}.timeline i{width:8px}.scene-disclaimer{font-size:8px;bottom:32px;right:5%}.motion-control{left:10px;bottom:7px;font-size:9px;padding:7px 9px}.home-marker span{width:27px;height:27px}.section-heading,.service-grid,.real-team{grid-template-columns:1fr}.service-section{padding:65px 6%}.section-heading{gap:10px;margin-bottom:35px}.service-grid{gap:45px}.service-grid img{height:260px}.service-grid p{min-height:0}.real-team{padding:65px 6%;gap:35px}.real-team img{min-height:0;height:280px}.end{padding:80px 6%}.real-team h2,.section-heading h2{font-size:43px}.end h2{font-size:50px}footer{padding:35px 6% 55px}.world{width:150svh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
.chapter-caption{left:5%;right:auto;width:min(570px,44%);padding:26px;gap:22px}.home-marker{left:86%;top:60%}@media(max-width:700px){.chapter-caption{left:5%;right:5%;width:auto;padding:22px;gap:15px}.van{width:16%}}
header{position:fixed;background:linear-gradient(#f6f8f7dd,#f6f8f700);padding-bottom:35px}.stage-intro{top:20%;text-shadow:0 1px 18px #ffffffe6}.stage-intro:before{content:"";position:absolute;inset:-25px -45px;background:radial-gradient(ellipse,#f7faf9c9,transparent 73%);z-index:-1}.stage-intro{isolation:isolate}
.chapter-caption{opacity:var(--caption-opacity,0)}
@media(max-width:700px){.world{width:220svh}.van{width:11%}.stage-intro{top:16%}.stage-intro>div{max-width:240px}}
