:root{--ink:#192724;--muted:#6c7773;--green:#c4ef78;--line:#dce1dc;--paper:#f8f9f5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #548e28;outline-offset:5px}.header{height:98px;max-width:1440px;margin:auto;padding:0 5%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:700;letter-spacing:2px}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:4px}.brand-icon{font-size:44px;letter-spacing:-5px}.brand-icon span{color:#80ad45}nav{display:flex;align-items:center;gap:36px;font-size:14px}nav>a:hover{color:#608c2f}.nav-contact{border:1px solid var(--ink);border-radius:30px;padding:13px 20px}.nav-contact span{margin-left:22px}.menu-toggle{display:none}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.08fr 1fr;padding:30px 5% 60px;gap:35px}.hero-copy{padding-top:24px}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:600;display:flex;align-items:center;gap:9px}.dot{display:inline-block;width:7px;height:7px;background:#719e3d;border-radius:50%}h1{font-size:clamp(34px,4.25vw,65px);line-height:1.3;font-weight:600;letter-spacing:-2.7px;margin:32px 0 24px}.accent{position:relative;z-index:0}.accent:after{content:"";position:absolute;bottom:1px;height:16px;left:0;right:0;background:var(--green);z-index:-1}.period{color:#7caa43}.intro{font-size:15px;line-height:1.95;color:var(--muted)}.button{border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:45px;background:var(--ink);color:#fff;padding:18px 24px;border-radius:4px;margin-top:22px;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#35533e;transform:translateY(-2px)}.button span{font-size:20px}.hero-bottom{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:var(--muted);padding-top:57px}.hero-art{min-height:490px;position:relative;background:#e9eee4;border-radius:8px;overflow:hidden}.hero-art>img{width:100%;height:100%;object-fit:cover;position:absolute}.art-top{position:absolute;inset:24px 24px auto;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px}.art-bottom{position:absolute;bottom:24px;left:24px;font-size:8px;letter-spacing:1.1px;display:flex;align-items:center;gap:8px}.ticker{background:var(--ink);color:#dbe5d5;display:flex;justify-content:space-evenly;gap:30px;padding:25px 20px;font-size:clamp(12px,1.65vw,24px);letter-spacing:1px;align-items:center}.ticker i{color:var(--green);font-size:30px;font-style:normal}.section{max-width:1440px;margin:auto;padding:95px 5%}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:40px;gap:24px}h2{font-weight:500;font-size:clamp(29px,3vw,44px);letter-spacing:-1.5px;line-height:1.45;margin:18px 0 0}.section-heading>p{color:var(--muted);font-size:13px;line-height:1.9}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.services article{position:relative;padding:30px 30px 32px 0}.services article+article{border-left:1px solid var(--line);padding-left:30px}.service-number{font-size:11px;color:var(--muted)}.service-symbol{display:block;font-size:44px;margin:25px 0;color:#4b6a43}h3{font-size:20px;font-weight:500;margin:15px 0}.services p{font-size:13px;line-height:1.9;max-width:290px;color:var(--muted)}.tags{font-size:10px;margin-top:30px;color:#687366}.work-section{padding-top:0}.filters{display:flex;gap:9px;margin-bottom:26px}.filters button{border:1px solid var(--line);padding:10px 20px;border-radius:25px;background:transparent;font-size:12px;color:var(--muted)}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.projects{display:grid;grid-template-columns:1fr 1fr;gap:28px}.project[hidden]{display:none}.project-image{height:330px;position:relative;border-radius:5px;overflow:hidden;display:grid;place-items:center}.project-green{background:#dde4d3}.project-blue{background:#e0e6f0}.project-index{position:absolute;left:20px;bottom:16px;font-size:9px;letter-spacing:1.5px;color:#5c6b60}.mock-site{width:77%;height:220px;background:#284b37;color:#f0f1d9;padding:20px 25px;box-shadow:0 20px 35px #26382926;transform:rotate(-5deg);transition:transform .35s}.project:hover .mock-site,.project:hover .dashboard{transform:rotate(0)}.mock-site>span{font-family:Georgia,serif;font-size:24px}.mock-site small{float:right;font:8px Arial}.mock-site>div{font-size:32px;line-height:1.3;letter-spacing:2px;margin-top:20px}.mock-site>div span{float:right;background:#bbce87;border-radius:50%;color:#284b37;font-size:26px;width:42px;height:42px;text-align:center;margin-top:15px}.mock-site>p{font-size:7px;letter-spacing:2px}.dashboard{display:flex;width:80%;height:220px;background:#f8fafc;border:5px solid #fff;border-radius:8px;box-shadow:0 20px 40px #3e4e7030;transform:rotate(5deg);transition:transform .35s}.dash-side{width:52px;background:#1d2b48;color:white;padding:13px;font-size:23px;border-radius:3px}.dash-side span{font-size:7px;display:block;line-height:4;margin-top:10px;color:#c3cde0}.dash-body{flex:1;padding:14px}.dash-body>p{font-size:10px;margin-top:0}.dash-body>p span{float:right}.dash-cards{display:flex;gap:10px}.dash-cards>div{width:50%;background:#edf0f5;padding:9px;font-size:7px}.dash-cards strong{display:block;font-size:22px;margin-top:6px}.dash-cards small{color:#668e66;font-size:10px}.chart{height:65px;margin-top:12px;display:flex;gap:9px;align-items:end;border-bottom:1px solid #ced5e1}.chart i{flex:1;background:#879bbf;height:45%}.chart i:nth-child(2n){height:70%;background:#b3c1db}.chart i:nth-child(3n){height:90%}.dash-body>small{font-size:6px;color:#8e98ab}.project-caption{display:flex;justify-content:space-between;align-items:center}.project-caption h3{font-size:17px;margin-bottom:8px}.project-caption p{font-size:11px;color:var(--muted)}.project-caption>span{font-size:25px}.about{border-top:1px solid var(--line);display:grid;grid-template-columns:1.2fr 1fr;gap:90px}.about-copy{font-size:14px;line-height:2;color:var(--muted);margin:26px 0}.demo-note{font-size:10px;color:#7e887d}.process>div{position:relative;padding:8px 0 22px 44px;border-bottom:1px solid var(--line);margin-bottom:20px}.process span{position:absolute;left:0;top:26px;font-size:11px;color:#728f55}.process h3{font-size:17px}.process p{font-size:12px;color:var(--muted)}.contact{background:var(--green);margin:0 auto;padding:65px max(5%,calc((100% - 1296px)/2));}.contact h2{font-size:clamp(34px,4.3vw,62px);line-height:1.35}.contact h2>span{float:right;font-size:100px;font-weight:300}.contact-row{display:flex;align-items:center;justify-content:space-between;margin-top:20px}.contact-row p{font-size:13px}.contact-row .button{margin:0}.contact-hint{font-size:13px;border-top:1px solid #a2c960;padding-top:20px;line-height:1.8}footer{max-width:1440px;padding:35px 5%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-brand{font-size:17px;font-weight:600}.footer-brand span{font-size:9px;margin-left:10px;letter-spacing:1px}footer p,footer>a:last-child{font-size:10px;color:var(--muted)}@media(min-width:1500px){.hero-art{min-height:535px}}@media(max-width:900px){nav{gap:20px}.hero{gap:20px}.hero-art{min-height:430px}.hero-bottom{font-size:7px;gap:8px}h1{letter-spacing:-1.5px}.project-image{height:270px}.mock-site,.dashboard{width:85%}.about{gap:40px}}@media(max-width:680px){.header{height:80px}.brand{font-size:18px}.brand-icon{font-size:36px}.menu-toggle{display:block;background:none;border:1px solid var(--line);border-radius:20px;padding:9px 14px;font-size:12px}.menu-toggle span{margin-left:12px}nav{display:none;position:absolute;top:80px;left:0;right:0;z-index:10;background:var(--paper);padding:22px 5%;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #1927240a}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:24px}.hero{grid-template-columns:1fr;padding-top:10px;padding-bottom:35px;gap:28px}.hero-copy{padding-top:5px}h1{font-size:42px;margin-top:23px}.intro{font-size:14px}.hero-bottom{padding-top:33px;font-size:8px}.hero-art{min-height:350px}.ticker{gap:12px;padding:20px 10px;flex-wrap:wrap;font-size:10px}.ticker i{font-size:20px}.section{padding:60px 5%}.section-heading{display:block;margin-bottom:27px}.section-heading>p{margin-top:20px;font-size:12px}.services{grid-template-columns:1fr}.services article,.services article+article{padding:25px 0;border-left:0}.services article+article{border-top:1px solid var(--line)}.service-symbol{position:absolute;right:12px;top:18px;font-size:40px}.services p{max-width:90%}.tags{margin-top:20px}.services h3{margin-top:20px}.work-section{padding-top:0}.projects{grid-template-columns:1fr;gap:22px}.project-image{height:300px}.about{grid-template-columns:1fr;gap:30px}.contact{padding:45px 5%}.contact h2>span{font-size:65px}.contact-row{align-items:start;gap:18px;flex-direction:column}.contact-row p{font-size:12px}footer{align-items:start;flex-wrap:wrap;padding:28px 5%}.footer-brand{width:100%}footer p{margin:0}.filters button{padding:9px 16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Personal digital human concept previews */
.avatar-preview{width:77%;height:245px;background:#eff3e7;border:5px solid white;border-radius:9px;position:relative;overflow:hidden;box-shadow:0 18px 35px #26382920;transform:rotate(-4deg);transition:transform .35s}.project:hover .avatar-preview{transform:rotate(0)}.preview-label{font-size:8px;letter-spacing:1px;padding:13px;display:flex;align-items:center;gap:6px;position:relative;z-index:1}.preview-label>span:last-child{margin-left:auto;color:#75856c;font-size:8px}.mini-person{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:160px;height:185px}.mini-person i{position:absolute;top:0;left:48px;width:65px;height:80px;background:#c0d0ad;border-radius:44% 44% 45% 45%;border-top:17px solid #314b3c;z-index:1}.mini-person b{position:absolute;bottom:-12px;left:0;width:160px;height:128px;background:#42634c;border-radius:70px 70px 0 0}.video-caption{position:absolute;bottom:18px;width:100%;text-align:center;z-index:2;color:#fff;font-size:12px;background:#213b2cbd;padding:12px 3px}.video-caption span{display:block;font-size:7px;margin-top:5px;letter-spacing:2px;color:#d4e6c7}.video-progress{position:absolute;bottom:8px;left:12px;right:12px;height:2px;background:#c4d1bc}.video-progress:before{content:"";display:block;width:40%;height:100%;background:#678c49}.lesson-preview{width:86%;padding:20px;background:#f7f9fd;border:5px solid white;border-radius:8px;box-shadow:0 18px 35px #26382920;transform:rotate(3deg);transition:transform .35s}.project:hover .lesson-preview{transform:rotate(0)}.lesson-title{font-size:15px;line-height:1.5}.lesson-title small{display:block;font-size:7px;letter-spacing:1.3px;margin-top:5px;color:#8490a3}.lesson-content{display:flex;gap:12px;margin-top:16px;height:145px}.lesson-notes{width:58%;background:#e9edf5;padding:14px}.lesson-notes>span{font-size:8px;color:#7c8da7}.lesson-notes h4{font-size:13px;line-height:1.6;font-weight:500;margin:10px 0}.lesson-notes i{display:block;height:3px;background:#cad3e3;margin:7px 0;width:90%}.lesson-notes i:last-child{width:60%}.lesson-person{flex:1;position:relative;background:#dce4ef;border-radius:4px;overflow:hidden}.lesson-person .mini-person{transform:translateX(-50%) scale(.7);transform-origin:bottom;height:185px;bottom:-5px}.lesson-person .mini-person b{background:#536e92}.lesson-person>span{position:absolute;bottom:7px;left:0;right:0;text-align:center;font-size:7px;color:white;z-index:2}.contact h2{max-width:100%}@media(max-width:680px){.avatar-preview{height:240px;width:80%}.lesson-title{font-size:14px}.lesson-notes{padding:10px}.lesson-notes h4{font-size:12px}}
