:root{--bg:#101010;--panel:#181818;--text:#f3f3f1;--muted:#a1a19e;--line:#30302e;--inverse:#f3f3f1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:-.02em;transition:background .35s,color .35s}.nav{height:70px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:8;padding:0 clamp(24px,5vw,80px);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent)}.brand img{display:block;width:35px;height:35px;object-fit:contain}.nav nav{display:flex;gap:26px;align-items:center}.nav a{font-size:14px;color:var(--muted);text-decoration:none}.nav a:hover{color:var(--text)}button{border:0;background:none;color:var(--text);cursor:pointer;font-size:20px;padding:4px}.hero{min-height:calc(100vh - 70px);max-width:1320px;margin:auto;padding:clamp(100px,17vh,200px) clamp(24px,7vw,112px) 80px}.eyebrow{font-size:12px;letter-spacing:.12em;color:var(--muted);font-weight:600}.hero h1{font-size:clamp(54px,8.5vw,126px);letter-spacing:-.075em;line-height:.96;margin:26px 0 34px;font-weight:650}.hero em{font-family:Georgia,"Songti SC",serif;font-weight:400}.hero p{font-size:18px;line-height:1.6;max-width:490px;color:var(--muted);letter-spacing:-.01em}.round-link{display:flex;justify-content:space-between;align-items:center;width:150px;border:1px solid var(--line);border-radius:999px;padding:12px 15px;margin-top:52px;color:var(--text);text-decoration:none;font-size:14px}.round-link span{font-size:17px}.intro{padding:clamp(80px,12vw,180px) max(24px,calc((100vw - 1100px)/2));border-top:1px solid var(--line)}.intro>p{font-size:clamp(28px,4.1vw,56px);line-height:1.16;letter-spacing:-.05em;max-width:1050px;margin:0}.facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:55px}.facts span{border:1px solid var(--line);border-radius:99px;color:var(--muted);padding:9px 13px;font-size:13px}.work-section{padding:80px clamp(24px,5vw,80px) 150px}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;max-width:1320px;margin:0 auto 34px}.section-head h2,.about h2,.contact h2{font-size:clamp(38px,5vw,70px);margin:13px 0 0;letter-spacing:-.06em;line-height:1}.section-head p{font-size:14px;color:var(--muted);max-width:220px;line-height:1.55;margin:0}.project-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.project{position:relative;min-height:390px;overflow:hidden;background:var(--panel);text-decoration:none;color:white;display:block}.project:nth-child(3n){grid-column:span 2;min-height:540px}.project img{width:100%;height:100%;position:absolute;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.project:hover img{transform:scale(1.035)}.project:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.68))}.project-info{position:absolute;z-index:1;bottom:0;left:0;right:0;padding:26px;display:flex;justify-content:space-between;align-items:end}.project-info h3{margin:0;font-size:clamp(21px,2vw,30px);letter-spacing:-.04em}.project-info p{margin:5px 0 0;font-size:13px;opacity:.75}.arrow{font-size:25px}.about{border-top:1px solid var(--line);padding:130px max(24px,calc((100vw - 1100px)/2));display:grid;grid-template-columns:1fr 1fr;gap:120px}.about-sticky{position:sticky;top:110px;height:max-content}.bio>div{padding:0 0 44px;margin-bottom:44px;border-bottom:1px solid var(--line)}.bio span{color:var(--muted);font-size:12px;letter-spacing:.08em}.bio h3{font-size:25px;letter-spacing:-.04em;margin:15px 0 9px}.bio p{font-size:15px;color:var(--muted);line-height:1.65;margin:6px 0}.contact{padding:clamp(100px,13vw,180px) max(24px,calc((100vw - 1100px)/2));background:var(--inverse);color:var(--bg)}.contact .eyebrow{color:color-mix(in srgb,var(--bg) 55%,transparent)}.contact h2{margin:18px 0 42px}.contact a{font-size:clamp(20px,3vw,38px);color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:7px}.contact a span{font-size:.7em}.contact p{margin-top:42px;color:color-mix(in srgb,var(--bg) 55%,transparent);font-size:14px}footer{display:flex;justify-content:space-between;padding:26px clamp(24px,5vw,80px);font-size:12px;color:var(--muted)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.detail{max-width:1320px;margin:auto;padding:80px clamp(24px,7vw,112px) 140px}.back{color:var(--muted);text-decoration:none;font-size:14px}.detail-head{padding:90px 0 75px;border-bottom:1px solid var(--line)}.detail-head h1{font-size:clamp(48px,7vw,100px);letter-spacing:-.07em;line-height:1;margin:18px 0}.detail-head p{font-size:18px;color:var(--muted);max-width:500px;line-height:1.6}.detail-head span{font-size:13px;color:var(--muted)}.gallery{margin-top:28px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 18px}.gallery figure{margin:0;min-width:0}.gallery figure:nth-child(5n+1){grid-column:span 2}.gallery img{display:block;width:100%;height:auto;background:var(--panel)}figcaption{font-size:12px;color:var(--muted);margin-top:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html.light{--bg:#f5f5f3;--panel:#e9e9e6;--text:#171717;--muted:#686866;--line:#d5d5d1;--inverse:#171717}@media(max-width:700px){.nav nav{gap:16px}.nav nav a:nth-child(2){display:none}.hero{padding-top:110px}.section-head,.about{display:block}.section-head p{margin-top:28px}.project-grid{grid-template-columns:1fr;gap:12px}.project,.project:nth-child(3n){grid-column:span 1;min-height:330px}.about{padding-top:85px;padding-bottom:85px}.about-sticky{position:static;margin-bottom:65px}.contact h2{line-height:1.05}.detail{padding-top:45px}.detail-head{padding:65px 0 45px}.gallery{grid-template-columns:1fr;gap:30px}.gallery figure:nth-child(5n+1){grid-column:span 1}}
