:root{--paper:#e7e8df;--muted:#adb9b6;--accent:#d95743;--pad:clamp(24px,5vw,80px)}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:#080f14;color:var(--paper);font:14px/1.8 'Microsoft YaHei','PingFang SC',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #e6ab83;outline-offset:6px}#scene{position:fixed;inset:0;width:100%;height:100%;z-index:0}.shade{position:fixed;inset:0;pointer-events:none;z-index:1;background:linear-gradient(90deg,#06101988,transparent 52%),linear-gradient(#0005,transparent 25%,transparent 80%,#0007)}.grain{position:fixed;inset:0;pointer-events:none;z-index:3;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 150 150' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.91' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.6' filter='url(%23n)'/%3E%3C/svg%3E")}header{position:fixed;left:0;right:0;top:0;padding:24px var(--pad);z-index:8;display:flex;align-items:center;gap:42px}header .brand{display:flex;align-items:center;gap:14px;font-size:13px;letter-spacing:.18em}.seal{display:grid;place-items:center;border:1px solid #d85943;color:#e67d69;width:34px;height:40px;font-family:serif;font-size:24px;line-height:1}small{display:block}header small{font-size:8px;letter-spacing:.16em;color:#b6c2bc}nav{margin-left:auto;display:flex;gap:30px;font-size:11px;letter-spacing:.1em}#view-toggle{background:#06101755;border:1px solid #dfe8df33;border-radius:30px;padding:7px 15px;font-size:10px}#view-toggle span{margin-left:12px;color:#e98b64}.rail{position:fixed;right:25px;top:38%;z-index:8;display:grid;gap:16px}.rail a{width:23px;display:flex;align-items:center;gap:8px;color:#a5b3af;font-size:9px}.rail a:before{content:'';width:4px;height:4px;border-radius:50%;background:#9aa8a766}.rail a.active:before{background:#e86b4d;box-shadow:0 0 10px #ed886d}.rail a.active{color:#f2e1c8}main{position:relative;z-index:2}section{height:135vh;min-height:780px;position:relative;pointer-events:none;padding:0 var(--pad);display:flex;align-items:center}section .copy,section a{pointer-events:auto}.copy{width:min(440px,36vw);text-shadow:0 3px 26px #010b10aa}.eyebrow{color:#b6c1bc;font-size:9px;letter-spacing:.22em;display:flex;align-items:center;gap:8px}.eyebrow i{width:5px;height:5px;background:var(--accent);border-radius:50%}h1,h2,h3,p{margin:0}h1,h2{font-family:'Songti SC','SimSun',serif;font-weight:400;letter-spacing:.025em;line-height:1.3}h1{font-size:clamp(40px,4.5vw,67px);margin:24px 0}h2{font-size:clamp(31px,3.1vw,47px);margin:20px 0}p{color:#b9c5bf;font-size:12px;line-height:2.15;letter-spacing:.05em}.caption{display:block;margin-top:27px;font-size:10px;letter-spacing:.18em;color:#c9a782}.caption:before{content:'';display:inline-block;width:24px;height:1px;background:#b8976c;margin-right:10px;vertical-align:middle}.hero{height:100vh;min-height:650px;align-items:flex-start;padding-top:25vh}.hero-bottom{position:absolute;bottom:70px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.1em;color:#afc0b8}.hero-bottom a{padding:10px 20px;border:1px solid #e1e6d83d;border-radius:35px;color:#dfddc7}.hero-bottom a span{margin-left:24px}.giant{position:absolute;left:40%;bottom:15%;font:clamp(100px,17vw,260px)/1 serif;color:#d4e5d606;letter-spacing:.18em;pointer-events:none}.low{align-self:flex-end;margin-bottom:22vh}.projects{margin-top:26px;background:#08192288;backdrop-filter:blur(8px);border:1px solid #ccdfd426;padding:22px;border-radius:4px}.projects small{font-size:9px;letter-spacing:.14em;color:#bd9370}.projects h3{font-weight:400;font-size:18px;margin:11px 0}.projects p{font-size:11px}.upcoming{display:grid;gap:10px;margin-top:22px;border-top:1px solid #ddd2;padding-top:15px;font-size:10px;color:#96aaa2}dl{margin-top:28px}dl div{padding:10px 0;border-top:1px solid #cad9ce26;display:flex;gap:22px;font-size:11px}dt{color:#8b9f9b}dd{margin:0}.contact-note{font-size:10px;color:#93a5a0;margin-top:20px}footer{position:absolute;bottom:70px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;font-size:10px;color:#b4bdb1}.scene-caption{position:fixed;bottom:22px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;z-index:7;font-size:9px;letter-spacing:.18em;color:#9cb0aa;pointer-events:none}#loading{position:fixed;inset:0;background:#080f14;display:grid;place-items:center;z-index:50;transition:opacity .7s,visibility .7s}#loading.done{opacity:0;visibility:hidden}.loading-inner{width:260px;text-align:center}.loading-inner .seal{margin:0 auto 25px;width:42px;height:48px}.loading-inner p{font-family:serif;font-size:24px;letter-spacing:.3em}.loading-inner small{font-size:10px;color:#8d9e99;margin-top:10px}.load-track{margin-top:25px;height:1px;background:#fff2}#load-bar{height:1px;display:block;background:#d78766;width:0;transition:width .25s}#failure{position:fixed;z-index:70;inset:20%;padding:40px;background:#15222b;border:1px solid #9e6457}#failure[hidden]{display:none}#failure button{margin-top:20px;background:#243d47;border:1px solid #aabbba;padding:10px 20px}.scenery main,.scenery .shade{opacity:0;pointer-events:none}.scenery main *{pointer-events:none}main,.shade{transition:opacity .5s}@media(max-width:700px){header{padding:20px 22px;gap:15px}nav{display:none}#view-toggle{margin-left:auto}.rail{right:12px}.copy{width:76vw;background:linear-gradient(90deg,#08141b99,transparent);padding:14px 0}.hero{padding-top:20vh}.hero h1{font-size:39px}.hero-bottom{bottom:65px;font-size:9px}.hero-bottom>span{max-width:130px}.scene-caption{font-size:8px}section{min-height:760px;align-items:flex-end;padding-bottom:18vh}section.hero{align-items:flex-start}.low{margin-bottom:0}.giant{display:none}h2{font-size:33px}p{font-size:11px}.projects{max-width:310px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Daylight palette and accessible sun-position controls. */
:root{--paper:#203a40;--muted:#4a6265;--accent:#a64d2c}body{background:#bcdde9}.shade{background:linear-gradient(90deg,#eef4edb8,transparent 55%),linear-gradient(#edf5f277,transparent 24%,transparent 84%,#ebf2eb44)}header small,.eyebrow,p,.hero-bottom,.scene-caption,footer,.contact-note,dt,.upcoming{color:#38575c}.copy{text-shadow:0 2px 18px #fff9}.seal{color:#a34c2d;border-color:#a34c2d}#view-toggle{background:#f0f6efc9;border-color:#52777855}#view-toggle span{color:#a34c2d}.rail a{color:#49696d}.rail a.active{color:#173e45}.hero-bottom a{color:#264e53;border-color:#365e5e66}.projects{background:#edf4e8da;border-color:#54777344}.projects small,.caption{color:#805435}#loading{background:#e6f0eb}.loading-inner small{color:#44676a}#failure{background:#f0eee3;color:#253b40}#failure button{background:#d8e5dd}.sun-control{position:fixed;right:32px;bottom:55px;z-index:9;width:240px;background:#f0f6edeb;border:1px solid #67878266;border-radius:12px;padding:12px 16px;color:#24464a;box-shadow:0 6px 24px #27474c18}.sun-control>div{display:flex;justify-content:space-between;align-items:center;gap:10px}.sun-control label{font-size:11px}.sun-control output{font-variant-numeric:tabular-nums;margin-left:5px}.sun-control button{border:1px solid #68867e66;background:#fff8;border-radius:20px;padding:3px 9px;font-size:10px}.sun-control input{width:100%;accent-color:#b97632;margin:12px 0 2px;cursor:ew-resize}.sun-control small{font-size:9px;color:#56736e}@media(max-width:700px){.copy{background:linear-gradient(90deg,#eaf1e6c9,transparent)}.sun-control{right:20px;bottom:49px;width:202px;padding:8px 12px}.sun-control small{font-size:8px}}
