:root{--ink:#050713;--paper:#f7f7f5;--blue:#1748ff;--blue2:#6f83ff;--orange:#ff6a32}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#fff;font-family:"Helvetica Neue","PingFang SC","Noto Sans CJK SC","Source Han Sans SC","Microsoft YaHei",sans-serif;font-size:16px;font-weight:300;line-height:1.7}body.light{background:var(--paper);color:#101010}a{color:inherit;text-decoration:none}img{display:block;width:100%}
.site-head{position:fixed;z-index:50;top:0;left:0;right:0;height:72px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;mix-blend-mode:difference;color:#fff}.brand{font-size:15px;font-weight:700;letter-spacing:.04em}.menu{display:flex;gap:30px;font-size:12px;font-weight:400;letter-spacing:.08em}.menu a{position:relative}.menu a:after{content:"";position:absolute;left:0;bottom:-7px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:.3s}.menu a:hover:after,.menu a.active:after{transform:scaleX(1);transform-origin:left}
.hero{min-height:100svh;position:relative;display:grid;place-items:center;overflow:hidden;padding:110px 24px 40px;background:radial-gradient(circle at 22% 24%,rgba(46,87,255,.6),transparent 32%),radial-gradient(circle at 75% 74%,rgba(78,104,255,.38),transparent 35%),radial-gradient(circle at 87% 17%,rgba(255,106,50,.18),transparent 16%),linear-gradient(150deg,#02040c 0%,#08143c 52%,#060814 100%)}.hero:before{content:"";position:absolute;inset:-20%;background:conic-gradient(from 120deg at 50% 50%,transparent 0 54%,rgba(67,99,255,.22) 62%,transparent 70% 86%,rgba(255,106,50,.08) 92%,transparent);filter:blur(40px);animation:turn 26s linear infinite}.hero-center{position:relative;z-index:2;width:min(1100px,90vw);text-align:center}.hero-mark{width:min(640px,74vw);aspect-ratio:3.2/1;margin:0 auto 58px;background:linear-gradient(100deg,#89a8ff 0%,#3a67ff 45%,#fff 67%,#ff713d 92%,#ff8b58 100%);-webkit-mask:url('assets/logo-white.png') center/contain no-repeat;mask:url('assets/logo-white.png') center/contain no-repeat;filter:drop-shadow(0 0 50px rgba(67,100,255,.48));animation:markIn 1.6s cubic-bezier(.2,.8,.2,1) both,pulse 7s ease-in-out 1.6s infinite}.hero-label{font-size:11px;font-weight:300;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.6)}.hero h1{margin:24px auto 22px;font-size:clamp(38px,5.8vw,82px);font-weight:700;line-height:1.08;letter-spacing:-.045em;max-width:980px}.hero h1 span{background:linear-gradient(90deg,#fff 25%,#9bb2ff 72%,#ff8a58 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-copy{margin:auto;max-width:620px;font-size:16px;font-weight:200;letter-spacing:.04em;color:rgba(255,255,255,.63)}.hero-meta{position:absolute;bottom:28px;left:30px;font-size:11px;font-weight:300;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48)}.scroll-cue{position:absolute;bottom:28px;right:30px;font-size:11px;font-weight:300;letter-spacing:.14em;color:rgba(255,255,255,.48)}
.intro{padding:11vw 30px 10vw;background:var(--paper);color:#101010}.intro p{margin:0;max-width:1120px;font-size:clamp(30px,4.5vw,64px);font-weight:700;line-height:1.2;letter-spacing:-.045em}.intro p span{color:var(--blue)}.section-top{padding:24px 30px;display:flex;justify-content:space-between;border-top:1px solid;border-bottom:1px solid;font-size:12px;font-weight:400;letter-spacing:.12em;text-transform:uppercase}
.gallery{background:var(--paper);color:#111;padding:30px;display:grid;grid-template-columns:repeat(12,1fr);gap:26px}.project-card{position:relative;grid-column:span 6;overflow:hidden;background:#ddd;min-height:520px}.project-card.wide{grid-column:span 12;min-height:min(74vw,760px)}.project-card.tall{min-height:680px}.project-card img{position:absolute;inset:0;height:100%;object-fit:cover;transition:transform .85s cubic-bezier(.2,.8,.2,1),filter .5s}.project-card:after{content:"";position:absolute;inset:34% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.78))}.project-card:hover img{transform:scale(1.025);filter:saturate(1.08)}.card-copy{position:absolute;z-index:2;left:28px;right:28px;bottom:24px;color:#fff;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end}.card-copy small{display:block;margin-bottom:8px;font-size:11px;font-weight:300;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.7)}.card-copy h2{margin:0;font-size:clamp(30px,4vw,60px);font-weight:700;line-height:1;letter-spacing:-.04em}.card-copy p{margin:0;font-size:13px;font-weight:200;text-align:right;color:rgba(255,255,255,.78)}
.editorial{padding:120px 30px}.editorial-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:9vw}.eyebrow{font-size:11px;font-weight:500;letter-spacing:.17em;text-transform:uppercase;color:var(--orange)}.display{margin:24px 0 46px;font-size:clamp(42px,6.5vw,92px);font-weight:700;line-height:1.03;letter-spacing:-.05em}.lead{font-size:clamp(21px,2.3vw,34px);font-weight:300;line-height:1.45}.copy{font-size:17px;font-weight:200;color:#b9bbc6}.light .copy{color:#555}.image-block{margin-top:84px}.image-block img{max-height:82vh;object-fit:cover}.caption{display:flex;justify-content:space-between;margin-top:10px;font-size:11px;font-weight:300;letter-spacing:.1em;text-transform:uppercase}
.project-head{min-height:86svh;position:relative;display:flex;align-items:end;padding:120px 30px 42px;overflow:hidden}.project-head img{position:absolute;inset:0;height:100%;object-fit:cover;opacity:.65}.project-head:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 34%,rgba(0,0,0,.9))}.project-title{position:relative;z-index:1;max-width:1150px}.project-title h1{margin:14px 0 22px;font-size:clamp(48px,8vw,112px);font-weight:700;line-height:.96;letter-spacing:-.055em}.project-title p{max-width:760px;font-size:18px;font-weight:200;color:rgba(255,255,255,.75)}.chapter{padding:100px 30px}.chapter-grid{display:grid;grid-template-columns:1fr 2fr;gap:9vw}.chapter h2{margin:0;font-size:clamp(34px,4.8vw,66px);font-weight:700;line-height:1.1;letter-spacing:-.045em}.chapter p{max-width:820px;font-size:18px;font-weight:200}.about-team{margin-top:72px;border-top:1px solid}.person{display:grid;grid-template-columns:1fr 2fr;gap:6vw;padding:52px 0;border-bottom:1px solid}.person h3{margin:0 0 8px;font-size:36px;font-weight:700}.person p{max-width:800px;font-weight:200}.contact-page{min-height:100svh;padding:120px 30px 44px;background:linear-gradient(135deg,#ff7543,#ffb069);color:#140d0a;display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}.contact-page h1{margin:0;font-size:clamp(58px,9vw,132px);font-weight:800;line-height:.86;letter-spacing:-.06em}.contact-info{font-size:18px;font-weight:300}.contact-info a{text-decoration:underline}.qr{width:min(250px,68vw);padding:13px;background:#fff;margin-top:30px}.footer{padding:30px;border-top:1px solid;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:11px;font-weight:300;letter-spacing:.1em;text-transform:uppercase}.footer .icp-link{color:inherit;text-decoration:none;opacity:.72}.footer .icp-link:hover{opacity:1;text-decoration:underline}.reveal{opacity:0;transform:translateY(26px);transition:.75s ease}.reveal.on{opacity:1;transform:none}
@keyframes turn{to{transform:rotate(360deg)}}@keyframes markIn{from{opacity:0;filter:blur(20px) drop-shadow(0 0 0 transparent);transform:scale(.94)}to{opacity:1;filter:blur(0) drop-shadow(0 0 50px rgba(67,100,255,.48));transform:none}}@keyframes pulse{50%{opacity:.72;filter:drop-shadow(0 0 76px rgba(67,100,255,.7))}}
@media(max-width:800px){.site-head{height:62px;padding:0 16px}.brand{font-size:13px}.menu{gap:13px}.menu a{font-size:10px}.hero{padding-inline:16px}.hero-mark{width:82vw;margin-bottom:42px}.hero-meta{left:16px}.scroll-cue{right:16px}.intro,.editorial,.chapter{padding-left:16px;padding-right:16px}.section-top{padding-inline:16px}.gallery{padding:16px;grid-template-columns:1fr;gap:16px}.project-card,.project-card.wide{grid-column:auto;min-height:58vh}.project-card.tall{min-height:68vh}.card-copy{left:18px;right:18px;bottom:18px;display:block}.card-copy p{text-align:left;margin-top:9px}.editorial-grid,.chapter-grid,.contact-page,.person{grid-template-columns:1fr}.contact-page{padding:100px 16px 32px}.footer{padding-inline:16px;display:block}.project-head{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
