:root{--paper:#f7f7ef;--ink:#304238;--green:#657b61;--muted:#8b9588;--line:#dce1d4;--apricot:#ffdaa0;font-family:'PingFang SC','Hiragino Sans GB',sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--green);outline-offset:5px}header{position:fixed;top:22px;left:4%;right:4%;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 27px;border:1px solid #fff;background:#fbfcf5db;backdrop-filter:blur(18px);border-radius:24px;box-shadow:0 6px 30px #52604505}.brand{font-size:23px;font-weight:600;letter-spacing:3px;display:flex;align-items:center;gap:18px}.brand span{font-size:10px;letter-spacing:1px;font-weight:400;color:var(--green)}.header-center{font-size:11px;color:var(--muted);letter-spacing:1px}.about{border:0;background:none;font-size:11px}.stage{height:100svh;min-height:600px;position:sticky;top:0;overflow:hidden;background:radial-gradient(ellipse at 70% 43%,#faf9f5 0%,#f2f1ea 60%,#eeeee5 100%)}#journey{height:480svh}#viewport{position:absolute;inset:0}canvas{display:block;width:100%;height:100%;touch-action:pan-y}.backdrop-word{position:absolute;top:30%;left:36%;font:400 clamp(90px,14vw,250px) Georgia,serif;letter-spacing:-.05em;color:#71876a08;white-space:nowrap}.hero-copy{position:absolute;left:7%;top:29%;pointer-events:none;transition:opacity .35s,transform .5s}.eyebrow{font:10px 'SFMono-Regular',Consolas,monospace;letter-spacing:2px;color:var(--muted);margin:0 0 24px}h1{font-size:clamp(40px,5vw,78px);font-weight:500;line-height:1.23;letter-spacing:-2px;margin:0 0 28px}h1 span{font-family:'Songti SC',serif;color:var(--green)}.description{font-size:13px;color:#7c897c;line-height:2;margin-bottom:26px}.primary{background:var(--apricot);border:1px solid #ecc888;border-radius:100px;padding:13px 17px 13px 22px;font-size:12px;pointer-events:auto;display:flex;gap:24px;align-items:center}.primary span{font-size:23px;line-height:1}.hero-meta{margin-top:35px;display:flex;align-items:center;gap:12px;color:var(--muted);font-size:10px}.hero-meta span{font-size:12px;color:var(--green)}.hero-meta i{width:18px;height:1px;background:var(--line)}.chapter{position:absolute;top:125px;left:7%;opacity:0;transition:opacity .35s;pointer-events:none}.chapter .eyebrow{margin-bottom:12px}.chapter h2{font-weight:500;font-size:28px;margin:0 0 10px;letter-spacing:-.5px}.chapter p:last-child{font-size:12px;color:var(--muted);margin:0}.exploring .hero-copy{opacity:0;transform:translateY(-20px);visibility:hidden}.exploring .chapter{opacity:1}.view-tools{position:absolute;right:5%;bottom:102px;display:flex;gap:7px}.view-tools button{background:#fff9;border:1px solid #e0e3d7;padding:10px 14px;border-radius:100px;font-size:15px}.view-tools span{font-size:10px;margin-left:5px}.view-tools button[aria-pressed=true]{background:#e0e9d8}.bottom-bar{position:absolute;bottom:32px;left:5%;right:5%;display:flex;align-items:center;gap:22px;height:36px}.scroll-hint{font-size:10px;color:var(--muted);letter-spacing:1px}.scroll-hint b{margin-left:18px;color:var(--green)}.progress-track{height:1px;flex:1;background:#cbd3bf}.progress-track div{height:2px;background:var(--green);width:0}.percentage{font-family:Georgia,serif;white-space:nowrap}.percentage em{font-size:32px;color:var(--green)}.percentage small{font-size:16px;color:var(--green)}#phase{font-size:10px;color:var(--muted);min-width:24px}.loader{position:absolute;inset:0;display:grid;place-content:center;text-align:center;background:var(--paper);z-index:10;transition:opacity .4s}.loader span{margin:auto;width:32px;height:32px;border:1px solid #d1dcca;border-top-color:var(--green);border-radius:50%;animation:spin 1s linear infinite}.loader p{font-size:12px;color:var(--green)}@keyframes spin{to{transform:rotate(360deg)}}.label{position:absolute;transform:translate(-50%,0);pointer-events:none;opacity:0;line-height:1;text-align:center;white-space:nowrap}.label:before{content:'';display:block;height:10px;width:1px;margin:0 auto 6px;background:#a4b09a}.label strong{display:block;font-weight:500;font-size:12px;line-height:1.3}.label small{display:block;font:8px 'SFMono-Regular',Consolas,monospace;letter-spacing:.5px;color:var(--muted);line-height:1.2;margin-top:5px}footer{padding:80px 8%;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);background:#f9f9f2}footer h2{font:36px/1.5 'Songti SC',serif;margin:0;color:var(--green)}footer p{font-size:13px}.footer-small{font-size:10px;color:var(--muted)}footer button{border:0;border-bottom:1px solid #a7b49d;background:none;padding:10px 0;font-size:11px}dialog{max-width:480px;width:calc(100% - 40px);border:1px solid white;border-radius:24px;padding:40px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#29372e66;backdrop-filter:blur(5px)}dialog h2{font-size:24px;font-weight:500}dialog p:not(.eyebrow){font-size:13px;line-height:1.9;color:#798674}#close-info{position:absolute;right:20px;top:14px;border:0;background:none;font-size:25px}
@media(max-width:760px){header{top:12px;left:4%;right:4%;padding:13px 18px;border-radius:20px}.brand{font-size:19px;gap:10px}.brand span{font-size:8px;letter-spacing:0}.header-center{display:none}.about{font-size:9px}.stage{min-height:570px}.hero-copy{top:17%;left:8%}.eyebrow{font-size:8px;letter-spacing:1.2px;margin-bottom:14px}h1{font-size:40px;line-height:1.15;margin-bottom:15px}.description{font-size:11px;line-height:1.8;margin-bottom:17px}.hero-meta{display:none}.primary{padding:10px 14px 10px 16px;font-size:10px;gap:17px}.primary span{font-size:18px}.backdrop-word{top:52%;left:6%;font-size:20vw}.chapter{top:98px;left:7%;right:7%}.chapter h2{font-size:21px}.chapter p:last-child{font-size:10px}.chapter .eyebrow{margin-bottom:8px}.view-tools{right:5%;bottom:84px;gap:5px}.view-tools button{padding:9px 12px}.view-tools span{font-size:9px}.bottom-bar{bottom:23px;gap:12px}.scroll-hint{font-size:8px;max-width:85px;line-height:1.7}.scroll-hint b{margin-left:5px}.percentage em{font-size:26px}.label strong{display:block;font-size:10px;line-height:15px}.label small,.label:before{display:none}footer{padding:50px 8%;display:block}footer h2{font-size:29px}footer>div+div{margin-top:35px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.loader span{animation:none}}

.progress-track{position:relative}#scrub{position:absolute;inset:-13px 0;width:100%;height:28px;margin:0;opacity:0;cursor:ew-resize}.progress-track:focus-within{outline:2px solid #8c9d7d;outline-offset:8px}
footer .photo-study-link{display:block;width:fit-content;border-bottom:1px solid #a7b49d;margin-bottom:12px;padding:10px 0;font-size:11px}
