@charset "UTF-8";
:root{--bg:#131513;--surface:#1e211e;--line:#363b35;--text:#f1f0e9;--muted:#aaafa5;--accent:#c4ed86;--font:Inter,"Segoe UI","Microsoft YaHei",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{background:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img,video{display:block;max-width:100%}button{border:0}p{line-height:1.85;margin:0}h1,h2,h3{margin:0;font-weight:500;letter-spacing:-.055em}::selection{background:var(--accent);color:var(--bg)}.accent{color:var(--accent)}.header{height:96px;margin:0 5.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:46px;font-weight:800;letter-spacing:-5px;display:flex;align-items:center;gap:5px}.brand-dot{color:var(--accent)}.brand-name{margin-left:16px;font-weight:500;font-size:14px;letter-spacing:2px;line-height:1.5}.brand-name small{font-size:8px;letter-spacing:1px;color:var(--muted)}nav{display:flex;gap:35px;font-size:13px}nav a:hover,.text-link:hover,footer a:hover{color:var(--accent)}nav span{font-size:9px;color:var(--accent);vertical-align:super;margin-left:3px}.nav-cta{font-size:13px;border:1px solid var(--line);padding:12px 17px;border-radius:30px}.nav-cta span{margin-left:22px;color:var(--accent)}.hero{padding:28px 5.2% 58px}.hero-top{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:1.5px}.hero-top i{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin:0 8px 1px 0}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding-top:54px}.eyebrow{color:var(--accent);font-size:11px;letter-spacing:2px;margin-bottom:22px}.hero h1{font-size:clamp(62px,6.6vw,105px);line-height:1.17;font-weight:600;letter-spacing:-.07em}.hero-desc{font-size:14px;color:var(--muted);margin-top:26px}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:31px}.button{display:inline-flex;align-items:center;gap:32px;padding:17px 23px;border-radius:4px;font-size:13px}.primary{color:#172013;background:var(--accent)}.primary:hover{background:#d6f4ab}.text-link{font-size:13px;display:inline-flex;gap:23px}.hero-foot{margin-top:42px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:var(--muted)}.hero-art{display:flex;flex-direction:column;text-align:left;background:#292d27;padding:20px 23px 19px;align-self:stretch;overflow:hidden;min-width:0;border:1px solid #3b4037;border-radius:6px}.art-label{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:#c3c7bc}.art-label span{color:var(--accent)}.art-stage{position:relative;flex:1;min-height:380px;display:flex;align-items:center;justify-content:center;margin:15px 0 5px}.art-stage img{position:absolute;width:51%;box-shadow:0 25px 35px #0005;transition:transform .5s ease}.art-back{left:8%;top:10%;transform:rotate(-10deg)}.art-front{right:7%;top:19%;transform:rotate(9deg)}.hero-art:hover .art-back{transform:rotate(-13deg) translateY(-5px)}.hero-art:hover .art-front{transform:rotate(12deg) translateY(-7px)}.art-spark{position:absolute;right:1%;top:0;color:var(--accent);font-size:90px;line-height:1}.art-caption{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid #4b5145;font-size:18px}.art-caption small{display:block;font-size:10px;color:var(--muted);margin-top:8px;letter-spacing:1px}.round-arrow{border:1px solid #6c7562;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;color:var(--accent);font-size:22px}.discipline-strip{padding:23px 5.2%;background:var(--accent);color:#26351d;display:flex;align-items:center;justify-content:space-between;gap:20px;overflow:hidden;white-space:nowrap;font-size:13px}.discipline-strip b{font-size:21px;font-weight:400}.discipline-strip span:last-child{font-size:11px;letter-spacing:1.5px}.section{padding:95px 5.2%}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px;gap:30px}.section-heading h2{font-size:clamp(32px,3.4vw,51px);line-height:1.35}.section-heading>p{font-size:13px;color:var(--muted)}.work-toolbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:33px;gap:15px}.filters{display:flex;gap:8px}.filter{padding:11px 17px;border-radius:30px;color:var(--muted);font-size:12px}.filter.active{color:#172013;background:var(--accent)}.filter:not(.active):hover{background:var(--surface);color:var(--text)}sup{font-size:9px;margin-left:5px}.result-count{color:var(--muted);font-size:11px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 28px}.project-card{min-width:0}.project-card[hidden]{display:none}.project-button{display:block;width:100%;padding:0;text-align:left}.project-cover{position:relative;aspect-ratio:1.38;overflow:hidden;border-radius:4px;background:var(--surface)}.project-cover img{width:100%;height:100%;object-fit:contain;transition:transform .55s ease}.project-button:hover .project-cover img{transform:scale(1.025)}.project-label{position:absolute;top:17px;left:17px;padding:7px 10px;background:#141713d9;border:1px solid #ffffff26;backdrop-filter:blur(8px);border-radius:3px;font-size:10px;letter-spacing:.4px}.project-corner{position:absolute;right:16px;bottom:16px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#151715e8;color:var(--accent);font-size:19px}.project-meta{display:flex;justify-content:space-between;gap:16px;margin:19px 0 9px}.project-meta h3{font-size:23px;letter-spacing:-.025em}.project-number{font-size:11px;color:var(--muted);padding-top:7px}.project-subtitle{font-size:12px;color:var(--muted);line-height:1.7}.project-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.project-tags span{color:#bbc1b4;font-size:10px;border:1px solid var(--line);border-radius:20px;padding:5px 9px}.approach{background:#1c201b;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.approach-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:12%;margin-top:65px}.giant-star{display:block;color:var(--accent);font-size:95px;line-height:1;margin-bottom:30px}.approach-note h3{font-size:28px;line-height:1.55;margin-bottom:20px}.approach-note p{font-size:13px;color:var(--muted);max-width:350px}.subtle{font-size:10px;color:#8d9688;display:block;margin-top:15px}.steps article{display:flex;align-items:flex-start;gap:24px;border-top:1px solid #42493e;padding:26px 0}.steps article>span{font-size:11px;color:var(--accent);padding-top:6px}.steps article>span:last-child{margin-left:auto;font-size:20px;padding-top:0}.steps h3{font-size:22px;letter-spacing:-.02em}.steps p{font-size:12px;color:var(--muted);margin-top:12px;max-width:380px}.process-note{border-top:1px solid #42493e;padding-top:20px;color:#9ba692;font-size:11px;line-height:1.9}.about{display:grid;grid-template-columns:1fr 1.25fr;gap:12%}.about h2{font-size:clamp(38px,4vw,60px);line-height:1.35}.about-mark{font-size:100px;letter-spacing:-9px;color:#343c2d;display:block;margin-top:50px;font-weight:700}.about-mark span{font-size:65px;color:var(--accent);display:inline-block;vertical-align:top;margin-left:14px}.about-body{padding-top:35px}.about-body .intro{font-size:25px;line-height:1.7;color:var(--text);margin-bottom:25px}.about-body>p{font-size:13px;color:var(--muted);margin-bottom:17px}.skills{display:flex;flex-wrap:wrap;gap:9px;margin:27px 0 36px}.skills span{padding:9px 13px;border:1px solid var(--line);font-size:11px;border-radius:4px}.about-meta{border-top:1px solid var(--line);padding-top:24px;display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.about-meta small{font-size:10px;color:var(--muted);display:block;margin-bottom:12px}.about-meta strong{font-size:12px;font-weight:400}.contact{background:#242b20;border-top:1px solid #434f39}.contact-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.contact h2{font-size:clamp(40px,5.8vw,82px);line-height:1.25}.contact h2>span:not(.accent){font-family:"Microsoft YaHei",sans-serif;font-weight:400}.contact-arrow{width:100px;height:100px;border-radius:50%;border:1px solid #6c7e5b;color:var(--accent);display:grid;place-items:center;font-size:50px;transition:background .2s,color .2s}.contact-arrow:hover{background:var(--accent);color:var(--bg)}.contact-bottom{display:flex;justify-content:space-between;border-top:1px solid #48533e;padding-top:28px;margin-top:40px}.contact-bottom>p{font-size:13px;color:#b9c3b0}.contact-bottom>div{text-align:right}.contact-pending{font-size:10px;color:#a3af99;margin-top:12px}footer{padding:28px 5.2%;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.skip-link{position:absolute;top:-100px;left:10px;padding:12px;background:var(--accent);color:var(--bg);z-index:100}.skip-link:focus{top:10px}dialog{background:var(--bg);color:var(--text);border:1px solid var(--line);padding:0;width:min(1100px,94vw);max-height:92dvh;border-radius:7px}dialog::backdrop{background:#000c;backdrop-filter:blur(7px)}.dialog-bar{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#131513f5;z-index:2}.dialog-bar>span{font-size:10px;letter-spacing:2px;color:var(--accent)}.dialog-bar button{font-size:12px}.dialog-bar button span{font-size:24px;margin-left:20px}.dialog-intro{padding:37px 40px}.dialog-intro h2{font-size:36px;margin:12px 0 15px}.dialog-intro>p{color:var(--muted);font-size:13px;max-width:750px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:30px 0 0;border-top:1px solid var(--line);padding-top:25px}.detail-grid h3{font-size:13px;letter-spacing:0;margin-bottom:9px;color:var(--text)}.detail-grid p{font-size:12px;color:var(--muted)}.detail-grid .wide{grid-column:1/-1}.pending{color:#aab59f!important}.detail-gallery{padding:0 40px 40px;display:grid;gap:24px}.gallery-button{padding:0;display:block;width:100%;background:#20241e;border:1px solid var(--line);cursor:zoom-in}.gallery-button img{width:100%;height:auto;max-height:1000px;object-fit:contain}.gallery-caption{font-size:11px;color:var(--muted);margin-top:9px}.detail-video{width:100%;max-height:72vh;background:#080a08}.video-note{font-size:11px;color:var(--muted);margin-top:12px}.process-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.process-list span{font-size:10px;color:var(--muted);border:1px solid var(--line);padding:6px 10px;border-radius:3px}#image-dialog{width:min(1400px,97vw);max-height:96dvh;background:#141614}#close-image{position:sticky;top:12px;display:block;margin:12px 18px 12px auto;padding:10px 16px;background:#171a17e8;border:1px solid #777;border-radius:25px;z-index:3}#zoom-image{width:100%;height:auto;max-width:none}#image-dialog p{text-align:center;font-size:11px;padding:18px;color:var(--muted)}
@media(min-width:1600px){.header,.hero,.section,.discipline-strip,footer{padding-left:max(5.2%,calc((100vw - 1440px)/2));padding-right:max(5.2%,calc((100vw - 1440px)/2))}.header{margin:0}.art-stage{min-height:490px}}
@media(max-width:1000px){.hero-grid{gap:4%}.hero h1{font-size:70px}.art-stage{min-height:330px}.art-stage img{width:59%}.art-back{left:0}.art-front{right:0}.art-spark{font-size:65px}.hero-top{font-size:8px}.hero-top>span:last-child{display:none}.art-caption{font-size:14px}.approach-layout,.about{gap:7%}.section{padding-top:75px;padding-bottom:75px}.hero-art{padding:16px}.project-meta h3{font-size:20px}.hero-desc{font-size:12px}}
@media(max-width:700px){.header{height:78px}.brand{font-size:36px}.brand-name{font-size:11px;margin-left:11px}.brand-name small{font-size:6px}.header nav{gap:18px;font-size:11px}.header nav a:nth-child(2){display:none}.header nav span{display:none}.nav-cta{display:none}.hero{padding-top:23px;padding-bottom:30px}.hero-grid{grid-template-columns:1fr;gap:32px;padding-top:35px}.hero h1{font-size:clamp(59px,12vw,82px)}.hero h1 br:last-of-type{display:none}.hero-desc{font-size:13px}.hero-actions{margin-top:25px}.hero-foot{margin-top:28px}.hero-art{min-height:510px}.art-stage{min-height:365px}.art-stage img{width:46%;max-width:220px}.art-back{left:9%;top:4%}.art-front{right:9%;top:12%}.art-spark{right:5%;font-size:75px}.art-caption{font-size:17px}.discipline-strip{padding-top:17px;padding-bottom:17px;gap:25px;font-size:11px}.discipline-strip span:last-child,.discipline-strip b:last-of-type{display:none}.section{padding-top:60px;padding-bottom:60px}.section-heading{display:block;margin-bottom:26px}.section-heading h2{font-size:34px}.section-heading>p{margin-top:20px;font-size:12px}.eyebrow{font-size:9px;margin-bottom:17px}.project-grid{grid-template-columns:1fr;gap:34px}.filter{padding:10px 12px;font-size:11px}.filters{gap:2px}.filter sup{font-size:8px;margin-left:2px}.result-count{font-size:9px}.project-cover{aspect-ratio:1.25}.project-meta h3{font-size:22px}.approach-layout,.about{grid-template-columns:1fr;gap:35px}.approach-layout{margin-top:35px}.giant-star{font-size:65px;margin-bottom:19px}.approach-note h3{font-size:25px}.about-title{position:relative}.about h2{font-size:42px}.about-mark{position:absolute;right:0;bottom:0;font-size:72px;margin:0}.about-mark span{font-size:45px;margin-left:10px}.about-body{padding-top:0}.about-body .intro{font-size:22px}.contact h2{font-size:41px}.contact-arrow{width:65px;height:65px;font-size:35px;flex-shrink:0}.contact-bottom{gap:25px}.contact-bottom>p{font-size:11px}footer{font-size:9px;gap:20px;flex-wrap:wrap}footer>span:nth-child(2){display:none}.dialog-intro{padding:25px 21px}.dialog-intro h2{font-size:28px}.dialog-bar{padding:14px 20px}.detail-grid{grid-template-columns:1fr;gap:21px}.detail-gallery{padding:0 17px 25px}.gallery-button img{max-height:none}.detail-video{max-height:58vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(max-width:700px){.hero h1 br:last-of-type{display:initial}}
