:root{--bg:#f7f7f2;--text:#1f2524;--muted:#696f6c;--blue:#315be9;--line:#ddded6;--panel:#eeeee7;--white:#fff;--serif:Georgia,'Songti SC','SimSun',serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,'Microsoft YaHei',sans-serif;font-size:15px;line-height:1.8}body.dark{--bg:#171c23;--text:#f0f0e8;--muted:#abb2bc;--blue:#9eb1ff;--line:#343c46;--panel:#212831;--white:#222a35;color-scheme:dark}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button{background:none;border:0}::selection{background:#cfd9ff}.wrap{max-width:1216px;margin:0 auto;padding-left:40px;padding-right:40px}.header{height:104px;display:flex;align-items:center;gap:40px}.brand{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:700;letter-spacing:-.6px}.brand b{font-size:14px;font-weight:400;letter-spacing:1px}.brand-icon{position:relative;background:var(--blue);color:var(--bg);height:36px;width:36px;display:grid;place-items:center;font-size:20px;border-radius:9px}.brand-icon span{position:absolute;top:-10px;right:-7px;background:var(--bg);color:var(--blue);font-size:19px;line-height:1}.header nav{margin-left:auto;display:flex;gap:32px;font-size:13px}.header nav a:hover,.text-link:hover{color:var(--blue)}.theme-button{border:1px solid var(--line);border-radius:50%;width:34px;height:34px;line-height:1;font-size:21px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;padding-top:65px;padding-bottom:90px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;margin:0 0 26px;color:var(--muted)}.dot{display:inline-block;width:6px;height:6px;background:var(--blue);border-radius:50%;margin-right:8px;vertical-align:middle}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(42px,5.1vw,66px);letter-spacing:-3px;line-height:1.23;font-weight:700;margin-bottom:28px}.blue{color:var(--blue)}.spark{font-size:42px;vertical-align:top;display:inline-block;margin:5px 0 0 12px}.hero-description{color:var(--muted);line-height:2;font-size:14px;margin-bottom:28px}.hero-actions{display:flex;align-items:center;gap:25px}.button{padding:12px 19px;display:inline-flex;gap:28px;align-items:center;font-size:12px;border-radius:4px}.primary{background:var(--blue);color:var(--bg)}.primary:hover{filter:brightness(.92)}.text-link{display:inline-flex;align-items:center;gap:20px;padding:0;font-size:12px}.hero-footnote{font-size:10px;color:var(--muted);margin:40px 0 0;letter-spacing:1px}.hero-art{height:400px;position:relative;isolation:isolate}.art-grid{position:absolute;inset:15px 0 0;background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:18px 18px;border-radius:50%;mask-image:radial-gradient(ellipse,black 48%,transparent 72%)}.art-orbit{position:absolute;width:390px;height:200px;border:1px solid var(--blue);border-radius:50%;top:95px;left:16px;opacity:.6}.orbit-one{transform:rotate(-35deg)}.orbit-two{transform:rotate(38deg)}.idea-window{position:absolute;top:48px;left:60px;width:295px;height:281px;background:#e2e9fd;color:#1f2524;transform:rotate(-7deg);border:1px solid #315be9;border-radius:7px;box-shadow:11px 12px 0 #315be912;overflow:visible}.window-bar{height:32px;border-bottom:1px solid #315be948;display:flex;align-items:center;gap:5px;padding:0 11px;font-family:monospace;font-size:9px}.window-bar i{height:5px;width:5px;border:1px solid #315be9;border-radius:50%}.window-bar span{margin-left:auto;color:#315be9}.window-body{padding:22px;position:relative}.tiny{font-size:8px;letter-spacing:1.5px;color:#315be9}.canvas-word{display:block;font-family:Arial,sans-serif;font-size:45px;font-weight:900;letter-spacing:-2px;line-height:1.05;margin-top:25px}.big-arrow{position:absolute;font-size:65px;right:23px;top:30px;color:#315be9}.cursor-label{position:absolute;right:-55px;bottom:-45px;background:#315be9;color:white;font-size:10px;padding:4px 9px;transform:rotate(7deg);border-radius:2px}.art-star{position:absolute;right:5px;top:2px;font-size:100px;color:var(--blue);line-height:1}.art-note{position:absolute;left:16px;bottom:11px;font-family:var(--serif);font-size:17px;transform:rotate(-6deg)}.art-note span{font-family:Arial,sans-serif;font-size:10px;color:var(--muted)}.art-tag{position:absolute;right:15px;bottom:10px;border:1px solid var(--line);padding:4px 10px;font-size:9px;letter-spacing:2px;border-radius:30px}.art-cross{position:absolute;top:9px;left:21px;font-size:26px;color:var(--muted)}.ticker{border-block:1px solid var(--line)}.ticker .wrap{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-top:16px;padding-bottom:16px;font-size:10px;letter-spacing:2px;color:var(--muted)}.ticker span:nth-child(even){color:var(--blue);font-size:17px}.section{padding-top:76px;padding-bottom:78px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:34px}.section-heading .eyebrow{margin-bottom:12px}h2{font-size:31px;line-height:1.4;letter-spacing:-1.3px;margin:0}.section-heading>p{font-size:12px;color:var(--muted);margin-bottom:5px}.filters{display:flex;gap:10px;margin-bottom:26px;flex-wrap:wrap}.filters button{font-size:11px;padding:6px 15px;border:1px solid var(--line);border-radius:30px}.filters .active{color:var(--bg);background:var(--text);border-color:var(--text)}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.project[hidden]{display:none}.project-image{height:238px;position:relative;overflow:hidden;border-radius:5px;margin-bottom:18px}.visual-art{background:#e4e9f3}.paper{position:absolute;width:150px;height:175px;left:calc(50% - 75px);top:27px;box-shadow:0 3px 12px #0000000a}.p1{background:#7494eb;transform:rotate(-14deg) translateX(-21px)}.p2{background:#fafbf7;transform:rotate(10deg) translateX(22px)}.p3{background:#335edc;color:white;transform:rotate(-4deg);padding:18px;font-size:22px;line-height:1.5;letter-spacing:-1px}.p3 i{font-style:normal;position:absolute;bottom:1px;right:18px;font-size:43px}.image-caption{position:absolute;bottom:12px;left:17px;font-size:7px;letter-spacing:2px;color:#4b566e}.writing-art{background:#e9e7dc;color:#393a32}.quote{position:absolute;left:21px;top:-30px;font-size:160px;font-family:Georgia;line-height:1.5;color:#c3c5ad}.writing-lines{position:absolute;left:44px;top:67px;font-family:var(--serif);font-size:20px;line-height:1.8}.writing-lines span{display:block}.writing-lines span:last-child{border-bottom:2px solid #7d8a43}.building-art{background:#243b33;color:#e0edb6}.code-window{position:absolute;inset:41px 23px 40px;border:1px solid #68867a;border-radius:5px;padding:10px 17px;font-family:monospace;font-size:11px}.code-window>span{font-size:8px;letter-spacing:3px;color:#7fae98}.code-window p{margin-top:19px;line-height:2}.code-window b{color:#d9ef9e;font-weight:400}.building-art .image-caption{color:#a8bbac}.project-meta{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);margin-bottom:9px}.project-meta span:first-child{color:var(--blue)}h3{font-size:17px;line-height:1.65;letter-spacing:-.5px;margin-bottom:10px}.project p{font-size:12px;line-height:1.9;color:var(--muted);margin-bottom:16px}.notes-section{background:var(--panel);border-block:1px solid var(--line)}.note-row{display:flex;align-items:center;text-align:left;gap:27px;width:100%;padding:23px 0;border-top:1px solid var(--line)}.note-row:last-child{border-bottom:1px solid var(--line)}.note-row:hover h3{color:var(--blue)}.note-number{font-family:Georgia;font-style:italic;color:var(--muted);font-size:23px}.note-row h3{margin:0;font-size:17px}.note-tag{font-size:9px;color:var(--muted)}.note-date{margin-left:auto;font-size:10px;color:var(--muted);white-space:nowrap}.note-arrow{font-size:23px;padding-left:10px}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.about h2{font-size:43px;line-height:1.4}.about-mark{display:inline-flex;border:1px solid var(--line);border-radius:50%;width:68px;height:68px;align-items:center;justify-content:center;font-size:25px;color:var(--blue);transform:rotate(-12deg);margin-top:34px}.about-copy{padding-top:30px}.about-copy p{color:var(--muted);font-size:13px;line-height:2}.about-copy .lead{color:var(--text);font-size:19px;margin-bottom:15px}.about-tags{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.about-tags span{border-bottom:1px solid var(--line);font-size:10px;padding-bottom:6px}.contact-note{margin-top:35px;padding-top:18px;border-top:1px solid var(--line)}.contact-note>span{font-size:9px;letter-spacing:2px}.contact-note p{margin:8px 0 0;font-size:11px}.closing{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:27px;padding-bottom:27px;font-family:var(--serif);font-size:22px}.closing a{border:1px solid var(--line);border-radius:50%;height:42px;width:42px;display:grid;place-items:center;font-family:Arial}footer{border-top:1px solid var(--line);padding-top:26px;padding-bottom:30px;display:flex;align-items:center;justify-content:space-between;gap:20px}footer .brand{font-size:13px}footer>span{font-size:9px;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);padding:30px;max-width:650px;width:calc(100% - 36px);max-height:85vh;overflow:auto}dialog::backdrop{background:#15203988;backdrop-filter:blur(4px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.dialog-top .eyebrow{margin:0}.dialog-top button{font-size:26px;line-height:1;padding:5px 10px}dialog h2{font-size:27px;margin-bottom:23px}dialog p{font-size:14px;color:var(--muted)}dialog h3{margin-top:22px}.skip{position:absolute;top:-100px;left:12px;z-index:9;background:var(--bg);padding:10px}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1280px){.hero-art{margin-left:25px}}@media(max-width:900px){.wrap{padding-left:26px;padding-right:26px}.hero{gap:15px;padding-top:35px}.hero-art{transform:scale(.85);transform-origin:center right}.hero-actions{gap:15px;flex-wrap:wrap}.projects{gap:18px}.project-image{height:210px}.writing-lines{left:26px;font-size:17px}.code-window{inset:42px 14px;font-size:9px}.about{gap:40px}}@media(max-width:680px){.header{height:82px;gap:16px}.header nav{gap:17px;font-size:11px}.brand{font-size:15px;gap:8px}.brand b{font-size:10px}.brand-icon{height:30px;width:30px;font-size:16px}.theme-button{width:28px;height:28px;font-size:18px}.hero{grid-template-columns:1fr;padding-top:28px;padding-bottom:35px;gap:15px}h1{font-size:49px}.hero-art{width:360px;max-width:100%;height:340px;transform:scale(.9);transform-origin:center;margin:0 auto}.idea-window{left:35px;width:260px;height:260px}.art-orbit{width:320px;left:0}.art-star{font-size:75px;right:0}.art-note{bottom:0}.art-tag{bottom:0}.canvas-word{font-size:40px}.cursor-label{right:-25px;bottom:-33px}.hero-footnote{margin-top:28px}.ticker .wrap{font-size:8px;letter-spacing:1px;flex-wrap:wrap;justify-content:center;gap:10px 15px}.section{padding-top:50px;padding-bottom:50px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin-top:12px}h2{font-size:27px}.projects{grid-template-columns:1fr;gap:32px}.project-image{height:270px}.paper{top:43px}.writing-lines{left:65px;top:80px;font-size:24px}.quote{left:40px}.code-window{inset:48px 36px;font-size:12px}.note-row{gap:16px;padding:20px 0}.note-row h3{font-size:14px}.note-date{display:none}.note-arrow{margin-left:auto}.about{grid-template-columns:1fr;gap:5px}.about h2{font-size:36px}.about-mark{display:none}.about-copy{padding-top:22px}.closing{font-size:17px;gap:15px}footer{align-items:flex-start;flex-direction:column;gap:9px}.eyebrow{letter-spacing:1.4px}dialog{padding:23px}dialog h2{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:680px){.hero{grid-template-columns:minmax(0,1fr)}.hero-copy{min-width:0}.hero-art{width:100%;max-width:360px}}
@media(max-width:680px){.hero{grid-template-columns:minmax(0,1fr)}.hero-copy{min-width:0}.hero-art{width:100%;max-width:360px;overflow:hidden}} @media(max-width:360px){h1{font-size:42px}.header{gap:10px}.header nav{gap:10px}.spark{font-size:30px;margin-left:5px}}
@media(min-width:681px) and (max-width:900px){.hero{grid-template-columns:minmax(0,1fr)}.hero-art{width:440px;max-width:100%;margin:0 auto;transform:none;overflow:hidden}.hero-copy{min-width:0}}
