
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;color:#222;background:#fff}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{height:100px;position:fixed;top:0;left:0;width:100%;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:0 2.5%;background:rgba(255,255,255,.94);transition:.3s}header.small{height:76px;box-shadow:0 1px 8px #0001}.logo img{width:82px;display:block}header.small .logo img{width:62px}nav{display:flex;gap:40px;align-items:center}nav a{font-size:16px}nav a:hover{color:#bb1531}nav small{font-size:14px;margin-left:7px}.menu{display:none;background:none;border:0;font-size:25px}.banner{height:clamp(480px,37.9vw,913px);position:relative;overflow:hidden;background:#ddd}.slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .7s}.slide.active{opacity:1}.arrows{position:absolute;top:50%;background:transparent;border:0;color:white;font-size:45px;text-shadow:0 1px 6px #0005;padding:20px}.prev{left:2.1%}.next{right:2.1%}.dots{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);display:flex;gap:10px}.dots button{height:10px;width:10px;padding:0;border:0;background:white;border-radius:50%}.dots button.on{background:#bd1731}.refbadge{position:absolute;bottom:20px;left:2.5%;font-size:11px;color:white;background:#0009;padding:7px 10px}.intro{max-width:1080px;margin:auto;padding:70px 24px 85px}.intro h1{font-size:34px;line-height:1.5;font-weight:500;margin:0 0 35px}.intro p{font-size:16px;color:#999;line-height:2;margin:5px 0}.work{width:95%;margin:auto;scroll-margin-top:95px}.sectionline{display:flex;justify-content:space-between;font-size:12px;color:#888;padding:15px 0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.case{position:relative;overflow:hidden;padding:0;border:0;background:#eee;text-align:left;aspect-ratio:1.2}.case img{height:100%;width:100%;display:block;object-fit:cover;transition:transform .7s}.cover{position:absolute;inset:0;padding:7%;background:#000b;display:flex;flex-direction:column;justify-content:space-between;color:#fff;opacity:0;transition:.3s;font-size:12px}.cover strong{font-weight:400;font-size:23px;line-height:1.5}.case:hover img,.case:focus-visible img{transform:scale(1.07)}.case:hover .cover,.case:focus-visible .cover{opacity:1}.more{display:block;width:150px;padding:13px;text-align:center;border:1px solid #999;margin:65px auto 95px;font-size:13px}.ideas{max-width:1180px;margin:0 auto 120px;display:grid;grid-template-columns:repeat(3,1fr);gap:50px;padding:0 25px}.ideas h3{font-weight:400;font-size:20px;border-bottom:1px solid #ddd;padding-bottom:20px}.ideas p{color:#777;font-size:13px;line-height:2}.service{min-height:620px;background:#b91630;color:white;display:flex;align-items:center;justify-content:center;text-align:center;scroll-margin-top:76px}.service small{letter-spacing:7px;font-size:14px}.service h2{font-size:clamp(40px,5.5vw,78px);font-weight:400;letter-spacing:-2px;margin:30px 0}.service p{font-size:16px;line-height:2.2}.service a{display:inline-block;background:white;color:#333;padding:18px 30px;margin-top:30px;font-size:13px}.about{width:85%;margin:100px auto;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;scroll-margin-top:100px}.aboutvisual{background:#f4f3f0;min-height:400px;display:flex;align-items:center;justify-content:center}.aboutvisual img{width:55%;mix-blend-mode:multiply}.about h2{font-weight:400;font-size:35px;line-height:1.6}.about p{color:#888;font-size:15px;line-height:2}.foot{background:#050505;color:white;padding:80px 8%;display:grid;grid-template-columns:.7fr 1.5fr 1.2fr;gap:50px}.footnav a{display:block;font-size:32px;margin-bottom:12px}.foot h2{font-size:34px;line-height:1.5;font-weight:400;margin-top:0}.foot p{font-size:14px;color:#aaa;line-height:2}.phone{font-size:28px}.notice{padding:15px 5%;background:#171717;color:#999;font-size:11px;line-height:1.8}dialog{border:0;padding:18px;max-width:90vw;max-height:94vh}dialog::backdrop{background:#000b}dialog img{max-width:80vw;max-height:70vh;display:block;margin:auto}dialog p{font-size:14px;max-width:70vw}dialog button{float:right;border:0;background:#eee;padding:10px 16px}a:focus-visible,button:focus-visible{outline:3px solid #bd1731;outline-offset:3px}@media(max-width:1000px){nav{gap:20px}nav small{display:none}.intro h1{font-size:28px}.cover strong{font-size:18px}.foot{gap:30px;padding:55px 5%}.foot h2{font-size:25px}}@media(max-width:700px){header{height:85px;padding:0 5%}.logo img{width:65px}.menu{display:block}nav{display:none;position:absolute;top:85px;left:0;right:0;background:white;padding:25px;flex-direction:column}nav.open{display:flex}header.small nav{top:76px}nav small{display:inline}.banner{height:560px}.slide{background-position:center}.refbadge{bottom:55px}.intro{padding:42px 6%}.intro h1{font-size:25px;margin-bottom:20px}.intro p{font-size:14px}.grid{grid-template-columns:1fr 1fr}.cover strong{font-size:15px}.cover{padding:9%}.sectionline{font-size:10px}.more{margin:40px auto 60px}.ideas{grid-template-columns:1fr;gap:15px;margin-bottom:60px}.service{min-height:470px;padding:30px 5%}.service h2{letter-spacing:0}.about{grid-template-columns:1fr;margin:55px auto;gap:25px}.aboutvisual{min-height:300px}.foot{grid-template-columns:1fr}.footnav{display:flex;gap:25px}.footnav a{font-size:20px}.notice{font-size:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.micro{font-size:11px;letter-spacing:2px;color:#777}.banner{height:clamp(540px,52vw,860px)}.slide{background-position:center;background-size:cover}.slide:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.6))}.herotitle{position:absolute;bottom:65px;left:6%;color:white;z-index:2}.herotitle small{letter-spacing:3px;font-size:10px}.herotitle h2{font-size:48px;font-weight:400;letter-spacing:-1px;margin:16px 0 10px}.herotitle p{font-size:14px}.intro{max-width:none;width:88%;padding:90px 0 100px;display:grid;grid-template-columns:1.1fr 1fr;gap:20px 8%}.intro>.micro{grid-column:1/-1}.intro h1{font-size:48px;margin:0;font-weight:400;line-height:1.4}.introcopy{padding-top:8px}.intro p{color:#777;line-height:2;font-size:15px}.case{aspect-ratio:16/10}.case img{object-fit:cover}.cover{background:#0009}.sectionline{padding:20px 0 24px;letter-spacing:1px}.mobilecaption{display:none}.service{min-height:480px}.team{padding:100px 6%;scroll-margin-top:75px}.teamhead{display:flex;justify-content:space-between;align-items:end;margin-bottom:60px}.teamhead h2{font-size:48px;font-weight:400;line-height:1.35;margin:20px 0 0}.teamhead>p{font-size:15px;color:#777;line-height:2}.people{display:grid;grid-template-columns:1fr 1fr;gap:7%}.person{display:grid;grid-template-columns:1fr 1fr;gap:26px;border-top:1px solid #ddd;padding-top:30px}.portrait{background:#e9e9e9;align-self:start}.portrait img{display:block;width:100%;height:auto}.bio{padding-top:10px}.bio h3{font-size:28px;font-weight:400;margin:14px 0}.bio h4{font-size:13px;font-weight:400;color:#b91630;margin:0 0 25px}.bio p{font-size:13px;line-height:1.9;color:#777}.company{padding:90px 6%;background:#f3f2ef;scroll-margin-top:75px}.company h2{font-size:44px;font-weight:400;line-height:1.5;margin:30px 0 55px}.companybottom{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #ccc;padding-top:25px}.companybottom p{color:#777;font-size:14px;line-height:2}.companybottom span{font-size:11px;letter-spacing:2px}.notice{color:#777}.foot{padding-top:75px}.logo img{width:76px}@media(max-width:1000px){.people{gap:35px}.person{grid-template-columns:1fr}.portrait{max-width:300px}.teamhead h2{font-size:40px}}@media(max-width:700px){.banner{height:580px}.herotitle{left:7%;bottom:55px}.herotitle h2{font-size:35px}.intro{padding:50px 0;display:block}.intro h1{font-size:35px;margin:20px 0}.intro p{font-size:14px}.grid{grid-template-columns:1fr}.case{aspect-ratio:16/10}.mobilecaption{display:block;position:absolute;bottom:12px;left:15px;font-size:12px;padding:5px 8px;background:#ffffffde;color:#222}.team{padding:60px 6%}.teamhead{display:block;margin-bottom:35px}.teamhead h2{font-size:35px}.teamhead>p{margin-top:25px;font-size:13px}.people{gap:20px}.person{padding-top:20px;gap:15px}.bio h3{font-size:24px}.bio p{font-size:12px}.bio .micro{font-size:9px;letter-spacing:1px}.bio h4{font-size:11px;margin-bottom:15px}.company{padding:55px 6%}.company h2{font-size:28px;margin-bottom:30px}.companybottom{display:block}.service{min-height:430px}.logo img{width:62px}}

.contactnew{padding:95px 6%;display:grid;grid-template-columns:1.2fr 1fr;gap:8%;border-top:1px solid #ddd;background:#f5f4f1;scroll-margin-top:90px}.contactlead h2{font-size:clamp(32px,4vw,58px);font-weight:400;line-height:1.3;margin:25px 0}.contactlead p{color:#777;font-size:13px}.contactlinks{padding-top:10px}.bigphone{font-size:clamp(24px,3vw,42px);display:block;margin-top:28px;letter-spacing:-1px}.bigphone span{color:#bd1731}.contactlinks p{font-size:13px;color:#777}.copywechat{border:1px solid #bbb;background:transparent;padding:14px 20px;color:inherit;font-size:13px}.copywechat span{margin-left:15px}.copyfeedback{display:block;min-height:22px;font-size:12px;color:#bd1731;padding-top:6px}.official{border-top:1px solid #ccc;padding-top:22px;margin-top:20px;font-size:13px}.official a{margin-left:22px}.footernew{background:#111;color:white;padding:65px 6%;display:grid;grid-template-columns:1.5fr .8fr .8fr 1.3fr;gap:35px}.footernew h3{font-size:30px;margin:0 0 15px;font-weight:400}.footernew span{display:block;color:#888;font-size:11px;margin-bottom:20px;letter-spacing:1px}.footernew a{display:block;font-size:14px;line-height:2.2}.footernew p{font-size:12px;color:#aaa;line-height:2}.legal{background:#111;border-top:1px solid #333;padding:20px 6%;color:#777;font-size:11px;display:flex;justify-content:space-between}.mobilecontact{display:none}.detailhead{margin:155px 6% 55px}.crumb{font-size:12px;color:#888}.detailhead h1{font-size:clamp(38px,5vw,70px);font-weight:400;letter-spacing:-2px;margin:35px 0}.projectmeta{display:flex;gap:70px;border-top:1px solid #ddd;padding-top:25px}.projectmeta span{font-size:11px;color:#888;letter-spacing:1px}.projectmeta p{font-size:15px;line-height:1.8}.detailgallery{width:88%;margin:auto}.detailgallery img{width:100%;height:auto;display:block;margin-bottom:25px}.projectnext{padding:65px 6%;display:flex;justify-content:space-between;gap:25px;border-top:1px solid #ddd;font-size:20px}.listhead{padding:155px 6% 40px}.listhead h1{font-size:56px;font-weight:400;margin:20px 0}.filters{display:flex;gap:10px;padding:0 2.5% 30px}.filters button{padding:10px 20px;border:1px solid #ddd;background:white}.filters button.active{background:#111;color:white}.listgrid{margin-bottom:80px}.case{display:block;color:inherit}.case[hidden]{display:none}.more{width:175px}@media(max-width:700px){.contactnew{grid-template-columns:1fr;padding:55px 6%;gap:30px}.footernew{grid-template-columns:1fr 1fr;padding:45px 6%;gap:30px}.footernew h3{font-size:26px}.legal{display:block;padding-bottom:100px;line-height:2}.legal span{display:block}.mobilecontact{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;z-index:40;background:white;padding:10px 5% calc(10px + env(safe-area-inset-bottom));gap:10px;border-top:1px solid #ddd}.mobilecontact a,.mobilecontact button{padding:13px 8px;font-size:13px;text-align:center;border:1px solid #222}.mobilecontact a{background:#bd1731;color:white;border-color:#bd1731}.mobilecontact .copyfeedback{grid-column:1/-1;display:none}.mobilecontact .copyfeedback:not(:empty){display:block}.detailhead{margin:120px 6% 35px}.detailhead h1{font-size:35px;letter-spacing:-1px}.projectmeta{gap:25px;flex-wrap:wrap}.projectmeta p{font-size:13px}.detailgallery{width:100%}.detailgallery img{margin-bottom:12px}.projectnext{font-size:15px;line-height:1.7}.listhead{padding-top:120px}.listhead h1{font-size:38px}.filters button{font-size:13px}}

.contactactions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 10px}.consultlink{display:inline-flex;align-items:center;padding:14px 20px;font-size:13px;background:#bd1731;color:#fff}.contactqr{margin-top:25px;display:flex;gap:20px;align-items:center}.contactqr img{width:112px;height:auto;background:white;padding:6px}.contactqr p{line-height:1.9;color:#777;font-size:12px}.footernew .address span:not(:first-child){margin:22px 0 10px}.legal{gap:15px;flex-wrap:wrap}.legal a{text-decoration:underline;text-underline-offset:4px}.detailcopy{max-width:850px;margin:30px 0 0;color:#666;font-size:16px;line-height:2}.detailgallery img{background:#f5f4f1}.projectcta{display:inline-block;margin-top:22px;border-bottom:1px solid #222;padding-bottom:7px;font-size:13px}.filters{flex-wrap:wrap;gap:8px}.catalogtools{padding:0 2.5% 28px;display:flex;justify-content:space-between;align-items:center;gap:20px}.catalogtools input{font:inherit;border:0;border-bottom:1px solid #aaa;padding:14px 0;width:320px;max-width:65vw;outline-offset:5px;background:none;border-radius:0}.catalogstatus{font-size:12px;color:#777}.catalogempty{text-align:center;padding:70px 20px;color:#777}.catalogmore{display:block;margin:35px auto 70px;border:1px solid #222;background:white;padding:15px 40px}.catalogmore[hidden],.catalogempty[hidden]{display:none}.filters button:focus-visible{outline:2px solid #bd1731}.listhead p{font-size:14px;color:#777;line-height:1.8}.cover{pointer-events:none}.webcard .cover{opacity:1;background:linear-gradient(transparent 45%,#000a);justify-content:end;gap:8px}.webcard .cover strong{font-size:20px}.webcard:hover .cover{background:#0009}.webcard .mobilecaption{display:none}.mobilecontact{grid-template-columns:1fr 1fr}.mobilecontact .wechatonline{background:#fff;color:#222;border-color:#222}.backtotop{position:fixed;right:22px;bottom:26px;z-index:20;background:#fff;border:1px solid #ddd;width:42px;height:42px;text-align:center;line-height:42px;font-size:19px;box-shadow:0 2px 15px #0001}.storywrap{width:88%;margin:65px auto;display:grid;grid-template-columns:1fr 2fr;gap:8%}.storywrap .detailcopy{margin:0}.storywrap .detailcopy h3{font-size:18px;font-weight:500;color:#222;margin:25px 0 12px}.storywrap .detailcopy h3:first-child{margin-top:0}@media(max-width:700px){.storywrap{display:block;margin:35px auto}.storywrap>.micro{display:block;margin-bottom:25px}}.case-source-note{font-size:12px;color:#888;margin:15px 0 0}.banner{margin-top:100px} @media(max-width:700px){.banner{margin-top:85px}.contactqr img{width:100px}.catalogtools{align-items:end}.filters{gap:6px}.filters button{padding:9px 13px}.webcard .cover strong{font-size:19px}.backtotop{bottom:94px;right:12px}.detailcopy{font-size:14px}.contactactions .copywechat span{display:none}.legal{padding-bottom:110px}}
