*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:#10223d;background:#f9fcff;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;font-size:15.2px;line-height:1.7}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible{outline:3px solid #2169c9;outline-offset:5px}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:16px;z-index:200;background:white;padding:10px}.skip:focus{top:10px}.shell{width:min(1320px,calc(100% - 96px));margin:auto}.micro{font-family:Arial,sans-serif;letter-spacing:.23em;font-size:10px;font-weight:500;color:#52739d}h2{font-size:clamp(28.5px,3.3vw,45.6px);line-height:1.25;letter-spacing:-.045em;font-weight:600}.glass{--gx:35%;--gy:0%;display:inline-flex;align-items:center;justify-content:center;gap:32px;min-height:48px;padding:11px 25px;border:1px solid #9acff4;border-top-color:#f9fdff;border-radius:40px;background:radial-gradient(ellipse at var(--gx) var(--gy),#ffffffb5,transparent 68%),linear-gradient(135deg,#d4eeff9c,#90cfff42 50%,#e8f7ff8a);box-shadow:inset 0 1px 2px #fff, inset 0 -2px 5px #80c6f62b,0 7px 18px #87bde325;backdrop-filter:blur(12px);font-size:13.3px;transition:transform .25s,box-shadow .25s,background .25s}.glass span{font-family:Arial,sans-serif;font-size:18px}.glass:hover{box-shadow:inset 0 1px 2px white,0 9px 25px #76b6ed45;transform:translateY(-2px)}.glass:active{transform:translateY(1px);box-shadow:inset 0 2px 5px #77b7ea40}.glass.small{min-height:40px;padding:7px 20px;gap:18px}.circle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #b6d7f0;border-radius:50%;background:#ffffff65;font:20px Arial;flex-shrink:0;transition:background .25s,transform .25s}.circle:hover{background:#d8eeff;transform:translateY(-2px)}
.cover{height:100svh;min-height:540px;position:relative;overflow:hidden;display:grid;place-items:center;background:radial-gradient(ellipse 50% 32% at 50% 56%,#72bafb 0%,#acd9fd 45%,#e5f4ff 78%,transparent 100%),linear-gradient(145deg,#fff,#f8fcff 60%,#f1f9ff)}.cover-identity{width:min(1000px,85vw);text-align:center;transform:translateY(-4%)}.logo-scene{position:relative;padding-top:clamp(95px,12vw,160px)}.cover-wordmark{width:100%;height:auto;mix-blend-mode:normal}.cover h1{font-size:22.8px;font-weight:400;letter-spacing:.6em;color:#fff;text-shadow:0 1px 7px #467ea9;margin-top:2px;padding-left:.6em}.ferret-track{position:absolute;width:22%;aspect-ratio:1;bottom:63%;left:0;animation:ferret-travel 7s linear infinite;will-change:transform}.ferret-sprite{width:100%;height:100%;background:url('/assets/ferret-run.webp') 0 0/400% 100%;animation:ferret-gait .6s steps(4) infinite;filter:drop-shadow(0 2px 1px #255e8c12)}@keyframes ferret-gait{to{background-position:133.3333% 0}}@keyframes ferret-travel{0%{left:-9%;opacity:0;transform:translateY(0)}5%{opacity:1}47%{transform:translateY(-9%)}92%{opacity:1}100%{left:89%;opacity:0;transform:translateY(0)}}.cover-bottom{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);text-align:center;white-space:nowrap}.cover-bottom .micro{display:block;font-size:9px;letter-spacing:.24em}.cover-bottom .micro span{margin-left:14px}.scroll-in{font-size:12.35px;display:flex;gap:18px;justify-content:center;margin-top:14px}.scroll-in span{animation:down-cue 2s ease-in-out infinite}@keyframes down-cue{50%{transform:translateY(5px)}}.motion-toggle{position:absolute;bottom:28px;right:30px;background:transparent;font-size:10.45px;color:#55718c;display:flex;gap:10px;align-items:center}.motion-paused .ferret-track,.motion-paused .ferret-sprite{animation-play-state:paused}
.site-header{position:sticky;top:0;z-index:20;background:#f8fcffdd;backdrop-filter:blur(18px)}.header-inner{width:min(1320px,calc(100% - 96px));height:82px;margin:auto;display:flex;align-items:center;border-bottom:1px solid #bcd0df70;gap:32px}.brand{display:flex;align-items:center;gap:15px;white-space:nowrap}.brand strong{font-size:24.7px;letter-spacing:-.08em}.brand span{font:10px Arial;letter-spacing:.2em}.site-header nav{margin-left:auto;display:flex;gap:35px;font-size:12.35px}.menu-toggle{display:none}.expression{min-height:calc(100svh - 82px);display:grid;grid-template-columns:42% 54%;gap:4%;align-items:center;padding-top:35px;padding-bottom:60px}.expression-copy{padding-right:8px}.expression h2{font-size:clamp(35px,4.2vw,60.8px);line-height:1.32;letter-spacing:-.055em;margin-top:28px;white-space:nowrap}.expression p{font-size:17.1px;color:#5a738e;line-height:1.85;margin:22px 0 30px}.hero-index{margin-top:clamp(50px,8vh,110px);display:flex;align-items:center;justify-content:space-between;max-width:280px}.hero-index>span{font:11px Arial;letter-spacing:.2em;display:flex;align-items:center;gap:22px}.hero-index i{width:45px;height:1px;background:#49647d}.hero-work{background:transparent;padding:0;text-align:left;position:relative;display:block;width:100%}.hero-work>img{width:100%;height:clamp(380px,64vh,670px);object-fit:cover;object-position:center;border-radius:3px}.hero-work-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11.4px;padding-top:16px}.hero-work-caption>span:last-child{font:10px Arial;letter-spacing:.12em}.hero-work-caption b{font-size:18px;margin-left:12px}.mobile-view{display:none}main{background:radial-gradient(ellipse 75% 420px at 0% 0%,#d5eeff80,transparent),linear-gradient(165deg,#fff 0%,#f7fcff 30%,#e9f6fe 70%,#fff 100%)}.works-section{padding:35px 0 70px}.section-head{display:flex;gap:24px;align-items:flex-end;justify-content:space-between;margin-bottom:28px}.section-head h2{margin-top:8px}.filters{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.filters button{font-size:11.4px;min-height:42px;padding:8px 15px;border-radius:30px;background:transparent;border:1px solid transparent}.filters .active{background:linear-gradient(135deg,#fff9,#b7e3ff65);border-color:#acd4f0;box-shadow:inset 0 1px 2px white,0 3px 8px #7cbce31c}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px 25px}.project-card{position:relative;width:100%;padding:0;text-align:left;background:transparent;overflow:hidden;border-radius:4px;isolation:isolate}.project-card:first-child{grid-column:1/-1}.card-image{aspect-ratio:1.45;overflow:hidden;position:relative;background:#e3eef5}.project-card:first-child .card-image{aspect-ratio:2.2}.card-image>img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.65,.3,1)}.card-image.contain>img{object-fit:contain}.card-bottom{display:flex;align-items:center;justify-content:space-between;padding:14px 0 0;gap:14px}.card-title{font-size:14.25px;font-weight:500}.card-bottom .circle{width:38px;height:38px;font-size:18px}.card-subtitle{font:10px Arial;color:#6a819c;letter-spacing:.15em;display:block;margin-bottom:4px}.card-overlay{position:absolute;inset:0;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:28px;color:white;background:linear-gradient(transparent 45%,#102237b5);opacity:0;transition:opacity .3s}.card-overlay p{font-size:12.35px;transform:translateY(9px);transition:transform .3s}.card-overlay .glass{color:white;min-height:42px;padding:7px 18px;font-size:12.35px;background:linear-gradient(135deg,#ffffff40,#84bce62b);white-space:nowrap}.mobile-card-action{display:none}.more-wrap{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;margin-top:35px}.result-count{font-size:10.45px;color:#7590a9}
@media(hover:hover) and (pointer:fine){.project-card:hover .card-image>img,.project-card:focus-visible .card-image>img{transform:scale(1.035)}.project-card:hover .card-overlay,.project-card:focus-visible .card-overlay{opacity:1}.project-card:hover .card-overlay p,.project-card:focus-visible .card-overlay p{transform:translateY(0)}}
.services-section,.studio-section{border-top:1px solid #b7d0e16b;padding-top:42px;padding-bottom:48px}.services-section h2{margin:10px 0 30px}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.service-list>div{display:flex;gap:28px;align-items:baseline;padding:22px 0;border-bottom:1px solid #b7d0e155}.service-list>div>span{font:22px Arial;color:#7daacc}.service-list h3{font-size:17.1px;font-weight:500}.service-list h3 span{font-size:18px}.service-list p{font-size:12.35px;color:#6d86a0;margin-top:7px}.studio-section{display:flex;align-items:center;justify-content:space-between;gap:40px}.studio-section h2{margin:10px 0 20px}.studio-section p{font-size:14.25px;color:#698099;line-height:1.9}.studio-section .glass{flex-shrink:0}.contact-section{background:linear-gradient(135deg,#e7f5ff,#fafdff 50%,#dfF1ff);padding-top:42px}.contact-section h2{margin:10px 0 30px}.contact-row{display:flex;align-items:center;gap:50px;flex-wrap:wrap}.contact-row>a{font:14px Arial;color:#54708e}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #b7d0e1a0;margin-top:48px;padding:23px 0 10px;font-size:11.4px;color:#5d7894}footer>span:last-child{font:9px Arial;letter-spacing:.2em}.concept-note{font-size:9.5px;color:#7b91a5;padding:5px 0 22px}
dialog{padding:28px;border:1px solid #d7e6ef;border-radius:16px;color:#10223d;background:linear-gradient(145deg,#fafdff,#edf7ff);box-shadow:0 30px 120px #183b6445}dialog::backdrop{background:#11274175;backdrop-filter:blur(8px)}#project-dialog{width:min(1450px,94vw);max-width:none;max-height:94svh;overflow:auto}.project-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #b7d0e17a;padding-bottom:17px;font-size:12.35px}.project-detail{display:grid;grid-template-columns:25% 1fr;gap:35px;padding-top:26px}.project-detail aside{padding-top:28px;min-width:0}.project-detail h2{font-size:clamp(26.6px,3.5vw,48px);letter-spacing:-.04em;margin:15px 0}.project-detail aside>p{font-size:13.3px;color:#617d98;line-height:1.85}.detail-actions{margin-top:30px;display:flex;align-items:flex-start;flex-direction:column;gap:12px}.detail-actions .glass{font-size:12.35px;gap:12px}.detail-actions>a{font-size:11.4px;color:#5a7998}.media-switch{display:flex;align-items:center;gap:18px;margin-top:40px}.media-switch>span{font:11px Arial;color:#66809a}#media-stage{width:100%;height:min(61vh,650px);display:flex;justify-content:center;align-items:center;background:#e2edf459;border-radius:5px;overflow:auto}#media-stage img{width:100%;height:100%;object-fit:contain}#media-stage.original img{max-width:none;object-fit:initial;width:auto;height:auto;max-height:none}#media-stage video{width:100%;height:100%;object-fit:contain;background:#122234}.project-thumbs{display:flex;gap:8px;overflow-x:auto;padding:14px 2px 5px;scrollbar-width:thin}.thumb{position:relative;padding:0;flex:0 0 65px;width:65px;height:52px;border:2px solid transparent;opacity:.65;background:#e8f2f9;border-radius:3px;overflow:hidden}.thumb.active{border-color:#4e9ee4;opacity:1}.thumb img{width:100%;height:100%;object-fit:cover}.thumb span{position:absolute;bottom:2px;right:4px;color:#fff;background:#17365699;padding:0 4px;font:11px Arial}.media-meta{font-size:10.45px;color:#65809a;margin-top:10px}.is-modal{overflow:hidden}#wechat-dialog{width:min(620px,92vw)}#wechat-dialog h2{font-size:22.8px}.qr-group{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:28px 0 10px}.qr-group span{display:block;text-align:center;font-size:12.35px;margin-top:8px}
@media(min-width:1600px){.cover-identity{width:1050px}}@media(max-width:1000px){.shell,.header-inner{width:calc(100% - 56px)}.header-inner{gap:20px}.site-header nav{gap:20px}.expression h2{font-size:4.3vw}.expression{grid-template-columns:44% 52%}.section-head{align-items:flex-start;flex-direction:column}.filters{justify-content:flex-start}.card-overlay{padding:18px}.project-detail{grid-template-columns:28% 1fr;gap:22px}.contact-row{gap:26px}}
@media(max-width:700px){html{scroll-padding-top:76px}.shell,.header-inner{width:calc(100% - 40px)}.cover{min-height:540px}.cover-identity{width:92vw}.logo-scene{padding-top:80px}.cover h1{font-size:17.1px;letter-spacing:.45em;margin-top:15px}.cover-wordmark{width:100%}.ferret-track{width:28%;bottom:55%;animation-duration:5.5s}.cover-bottom{bottom:54px}.cover-bottom .micro{font-size:8px}.motion-toggle{font-size:9.5px;bottom:15px;right:18px}.header-inner{height:68px;gap:14px}.brand{gap:10px}.brand strong{font-size:22.8px}.brand span{font-size:8px;letter-spacing:.15em}.menu-toggle{display:flex;flex-direction:column;gap:5px;justify-content:center;align-items:center;width:44px;height:44px;margin-left:auto;background:transparent}.menu-toggle span{width:19px;height:1px;background:#10223d}.contact-shortcut{display:none!important}.site-header nav{display:none;position:absolute;left:0;right:0;top:68px;background:#f6fbfff5;padding:20px;box-shadow:0 10px 20px #1f528815;flex-direction:column;gap:0}.site-header nav a{padding:13px 12px;font-size:14.25px}.site-header.menu-open nav{display:flex}.expression{display:flex;flex-direction:column;align-items:stretch;gap:28px;min-height:0;padding:46px 0 55px}.expression h2{font-size:clamp(31px,8.55vw,49.4px);margin-top:15px;line-height:1.4}.expression .micro{font-size:8px;letter-spacing:.2em}.expression p{font-size:14.25px;line-height:1.9;margin:15px 0 0}.expression-copy>.glass,.hero-index{display:none}.hero-work>img{height:auto;aspect-ratio:1.05;object-fit:cover}.hero-work-caption{font-size:11.4px;gap:5px;padding-top:13px}.hero-work-caption>span:last-child{font-size:9px}.hero-work-caption b{display:none}.mobile-view{display:flex;width:100%;margin-top:18px;min-height:46px}.works-section{padding-top:15px;padding-bottom:45px}.section-head{margin-bottom:20px;gap:18px}.section-head h2{font-size:28.5px}.filters{flex-wrap:nowrap;width:100%;overflow-x:auto;gap:4px;padding-bottom:3px;scrollbar-width:none}.filters button{white-space:nowrap;padding:8px 12px;min-height:44px;font-size:11.4px}.work-grid{grid-template-columns:1fr;gap:30px}.project-card:first-child{grid-column:auto}.project-card:first-child .card-image,.card-image{aspect-ratio:1.5}.card-image{border-radius:4px}.card-image>img{transform:none!important}.card-overlay{display:none}.card-bottom{padding:13px 0 0}.card-title{font-size:15.2px}.card-bottom .circle{display:none}.mobile-card-action{display:inline-flex;align-items:center;gap:9px;min-height:44px;border:1px solid #b6d9f1;border-top-color:#fff;border-radius:30px;background:linear-gradient(135deg,#fff9,#b4dfff55);padding:8px 15px;font-size:11.4px;white-space:nowrap;box-shadow:inset 0 1px 2px #fff}.card-subtitle{font-size:9px;letter-spacing:.08em}.service-list{grid-template-columns:1fr}.service-list>div{gap:23px;padding:21px 0}.service-list h3{font-size:16.15px}.service-list>div>span{font-size:20px}.service-list p{font-size:11.4px}.services-section h2,.studio-section h2,.contact-section h2{font-size:28.5px}.services-section,.studio-section{padding-top:30px;padding-bottom:35px}.studio-section{align-items:flex-start;flex-direction:column;gap:25px}.studio-section p{font-size:12.35px;line-height:2}.contact-row{flex-direction:column;align-items:flex-start;gap:23px}.contact-section{padding-top:30px}footer{flex-wrap:wrap;gap:17px;margin-top:35px}footer .brand{width:100%}footer .brand strong{font-size:20.9px}.concept-note{font-size:8.55px}#project-dialog{width:100%;height:100svh;max-height:100svh;max-width:100%;margin:0;border:0;border-radius:0;padding:18px}.project-dialog-head{padding-bottom:12px}.project-detail{display:flex;flex-direction:column;gap:20px;padding-top:18px}.project-detail aside{padding:0;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:12px}.project-detail aside>.micro{grid-column:1/-1;font-size:8px}.project-detail h2{font-size:26.6px;margin:6px 0}.project-detail aside>p{grid-column:1/-1;font-size:11.4px}.detail-actions{grid-column:1/-1;margin-top:15px;flex-direction:row;align-items:center;gap:16px}.detail-actions .glass{font-size:11.4px;min-height:44px;padding:8px 18px}.detail-actions>a{font-size:10.45px}.media-switch{grid-column:2;grid-row:2;margin:0;gap:8px}.media-switch .circle{width:35px;height:35px;font-size:17px}.media-switch>span{font-size:10px}#media-stage{height:46svh;min-height:230px}.thumb{flex-basis:58px;width:58px;height:48px}.qr-group{gap:12px}#wechat-dialog{padding:20px}.glass{min-height:46px}.micro{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.ferret-track{left:36%;opacity:1}.glass:hover,.project-card:hover .card-image>img{transform:none}}


/* One continuous pose and flight arc: no anatomical cuts between frames */
.logo-scene{--runway-height:clamp(110px,12vw,155px);padding-top:var(--runway-height)}
.ferret-track{width:20%;top:auto;bottom:calc(100% - var(--runway-height) - 50px);left:0;animation:ferret-flight 5.4s linear infinite;will-change:transform,left}
.ferret-sprite{background-repeat:no-repeat;background-position:66.666667% 0;animation:ferret-body 5.4s ease-in-out infinite;transform-origin:50% 85%}
@keyframes ferret-flight{0%{left:0;opacity:0;transform:translateY(0)}8%{opacity:1;transform:translateY(-2%)}25%{transform:translateY(-10%)}50%{transform:translateY(-22%)}75%{transform:translateY(-10%)}92%{opacity:1;transform:translateY(-2%)}100%{left:80%;opacity:0;transform:translateY(0)}}
@keyframes ferret-body{0%,100%{transform:scale(.97,1.02) rotate(-3deg)}20%{transform:scale(1.03,.98) rotate(-5deg)}50%{transform:scale(1,1) rotate(0deg)}78%{transform:scale(.99,1.02) rotate(4deg)}92%{transform:scale(1.035,.96) rotate(1deg)}}
.cover-offscreen .ferret-track,.cover-offscreen .ferret-sprite{animation-play-state:paused}
@media(max-width:700px){.logo-scene{--runway-height:100px}.ferret-track{width:28%;bottom:calc(100% - var(--runway-height) - 15px);animation-duration:4.8s}.ferret-sprite{animation-duration:4.8s}@keyframes ferret-flight{0%{left:0;opacity:0;transform:translateY(0)}8%{opacity:1;transform:translateY(-2%)}25%{transform:translateY(-10%)}50%{transform:translateY(-22%)}75%{transform:translateY(-10%)}92%{opacity:1;transform:translateY(-2%)}100%{left:72%;opacity:0;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){.ferret-track{left:36%;opacity:1;transform:none;animation:none!important}.ferret-sprite{animation:none!important;transform:none}}
.project-visual{min-width:0}.project-detail{grid-template-columns:minmax(0,25%) minmax(0,1fr)}


/* Original complete drawings only, with no separate limbs or skeletal layers */
.ferret-track{animation:none!important;width:20%;aspect-ratio:1;bottom:calc(100% - var(--runway-height) - 54px);left:0;will-change:transform,left}
.ferret-canvas{width:100%;height:100%;display:block}
@media(max-width:700px){.ferret-track{width:28%;bottom:calc(100% - var(--runway-height) - 14px)}}

.ferret-foot-shadow{position:absolute;z-index:-1;left:58%;top:83%;width:25%;height:4.5%;border-radius:50%;background:radial-gradient(ellipse,#12356b99 0%,#173d7260 35%,#173d7200 75%);pointer-events:none;will-change:transform,opacity}
.ferret-track{isolation:isolate}

.logo-letter-glow{position:absolute;inset:auto 0 0;width:100%;height:auto;pointer-events:none;z-index:1;filter:url(#wordmark-letter-white) drop-shadow(0 0 3px #fff) drop-shadow(0 0 9px #d2edff);will-change:opacity}.ferret-track{z-index:2}

/* New portfolio video label */
.card-video-badge{position:absolute;left:16px;top:16px;padding:7px 12px;border:1px solid #ffffff70;border-radius:30px;background:#10243c85;color:#fff;font-size:11px;backdrop-filter:blur(8px);pointer-events:none}

.media-groups{display:flex;gap:8px;margin-top:14px}.media-groups[hidden]{display:none}.media-groups button{min-height:44px;padding:9px 18px;border:1px solid #bed9ec;border-radius:24px;background:transparent;color:#617d98;font-size:12px}.media-groups button[aria-pressed="true"]{color:#10223d;background:linear-gradient(135deg,#fff,#c9eaff);border-color:#8dc8f0;box-shadow:inset 0 1px 2px #fff}.media-groups+.project-thumbs{padding-top:10px}

/* Preserve eyes in the full-bleed portrait project cover */
.project-card[data-project="jinshui"] .card-image>img{object-position:center 20%}

/* Production legal information */
.legal-footer{width:100%;text-align:center;font-size:12px;line-height:1.9;color:#48677f;margin:26px auto 0;padding:20px 0 8px;border-top:1px solid #bad5e5}.legal-footer p{margin:5px 0}.legal-footer nav{display:flex;gap:10px 22px;flex-wrap:wrap;justify-content:center}.legal-footer a{text-decoration:underline;text-underline-offset:3px}.ai-card-label{display:block;font-size:10px;font-weight:400;letter-spacing:.02em;line-height:1.6;color:#597286;margin-top:6px}.ai-notice{font-size:12px;line-height:1.6;color:#496b85;margin:0 0 12px}.legal-page{max-width:860px;margin:0 auto;padding:36px 24px 60px;font-size:16px;line-height:1.9}.legal-page h1{font-size:30px;margin:24px 0}.legal-page h2{font-size:20px;margin:26px 0 8px}.legal-page p{margin:10px 0}.legal-page a{color:#164f7b;text-decoration:underline}.legal-page .back{display:inline-block;margin-bottom:12px}.legal-page .effective{font-size:13px;color:#52738c}.legal-page footer{display:block;margin-top:36px}
@media(max-width:600px){.legal-footer{font-size:11px}.legal-footer nav{gap:8px 16px}.legal-page{padding:24px 20px 44px}.ai-card-label{font-size:9px}}
