:root{color:#252525;background:#fff;font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{height:104px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e5e5}.brand{width:200px}.brand img{display:block;width:100%;filter:grayscale(1)}nav{display:flex;gap:40px;font-size:14px}.share{border:0;background:none}.intro{padding:42px 5% 48px}.kicker{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.7px;color:#777}.intro-row{display:flex;align-items:flex-end;justify-content:space-between;margin-top:42px}.intro-row h1{font-size:clamp(42px,5.4vw,84px);line-height:1.22;letter-spacing:-3px;font-weight:500;margin:0}.intro-row em{color:#999;font-style:normal}.intro-row p{font-size:14px;line-height:1.9;color:#777}.intro-row a{display:inline-block;margin-top:18px;font-size:14px}.banner{margin:0 2%;background:#000}.banner img{display:block;width:100%;height:auto}.section{padding:105px 5%}.section-heading{display:flex;align-items:flex-end;justify-content:space-between}.section small{font-size:12px;letter-spacing:1.7px}.section h2{font-size:clamp(34px,4vw,58px);line-height:1.28;font-weight:500;margin:18px 0 0}.section-heading>p{font-size:14px;color:#777}.filters{display:flex;align-items:center;gap:30px;margin:42px 0 32px;padding-bottom:16px;border-bottom:1px solid #ddd;overflow:auto}.filters button{border:0;background:none;padding:10px 0;white-space:nowrap;color:#777}.filters button.active{color:#222;border-bottom:2px solid #222}.filters span{margin-left:auto;white-space:nowrap}.grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 28px}.card{border:0;background:none;text-align:left;padding:0}.visual{position:relative;aspect-ratio:1.33;overflow:hidden;background:#eee}.visual img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover img{transform:scale(1.025)}.visual b{position:absolute;right:18px;bottom:18px;width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:#fff;font-size:22px;font-weight:400}.visual small{position:absolute;left:18px;top:18px;padding:6px 9px;background:#ffffffdb;color:#555}.meta{display:flex;justify-content:space-between;margin-top:18px;font-size:12px;letter-spacing:1px;color:#777}.card h3{font-size:23px;font-weight:500;margin:12px 0}.card>p{font-size:14px;color:#777}.service{display:grid;grid-template-columns:1fr 1.3fr;gap:8%;background:#f3f3f3}.service>div:first-child>p{color:#777}.service-list article{display:flex;gap:25px;border-bottom:1px solid #d3d3d3;padding:25px 0}.service-list article:first-child{padding-top:0}.service-list article>span{font-size:12px;color:#777}.service-list h3{font-size:26px;font-weight:400;margin:0 0 10px}.service-list p{font-size:14px;color:#777;margin:0}.about{background:#282828;color:#fff}.about h2{font-size:clamp(42px,5vw,76px)}.about>p{max-width:600px;color:#ccc;line-height:2;margin-top:42px}footer{padding:34px 5%;display:flex;justify-content:space-between;color:#777;font-size:12px}dialog{width:min(920px,calc(100% - 30px));max-height:92vh;padding:0;border:0;box-shadow:0 18px 70px #0004}dialog::backdrop{background:#0005;backdrop-filter:blur(3px)}dialog .close{position:fixed;z-index:2;top:calc(4vh + 12px);right:calc((100vw - min(920px,calc(100vw - 30px)))/2 + 12px);width:40px;height:40px;border:0;background:#fffc;font-size:27px}.dialog-head{padding:26px 70px 22px 28px}.dialog-head h2{font-size:28px;font-weight:500;margin:0 0 8px}.dialog-head p{color:#777;margin:0;font-size:14px}dialog>img{display:block;width:100%;height:auto}.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:#222;color:#fff;padding:11px 18px;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1}
@media(max-width:700px){header{height:82px;padding:0 6%}.brand{width:150px}nav{display:none}.intro{padding:28px 6% 30px}.kicker span:last-child{display:none}.intro-row{display:block;margin-top:24px}.intro-row h1{font-size:clamp(34px,10vw,50px);letter-spacing:-1.5px}.intro-row>div{display:flex;justify-content:space-between;align-items:flex-end;margin-top:22px;gap:20px}.intro-row p{font-size:12px}.intro-row a{white-space:nowrap}.banner{margin:0 4%}.section{padding:66px 6%}.section-heading{display:block}.section-heading>p{font-size:12px}.filters{gap:22px;margin-top:27px}.filters span{margin-left:0}.grid{grid-template-columns:1fr;gap:34px}.card h3{font-size:21px}.service{grid-template-columns:1fr}.service-list{margin-top:35px}.service-list h3{font-size:23px}.service-list p{font-size:12px}.about>p{font-size:14px}footer{flex-wrap:wrap;gap:20px;padding:28px 6%}footer>span:nth-child(2){display:none}.dialog-head{padding:22px 52px 18px 16px}.dialog-head h2{font-size:21px}dialog .close{right:23px;top:calc(4vh + 12px)}}

header nav{gap:28px}
.about{width:100%;border:0;text-align:left;display:flex;align-items:flex-end;justify-content:space-between;background:#202020;color:#fff;transition:background .25s}
.about:hover{background:#171717}
.about-copy{display:block;max-width:980px}.about-copy small{display:block;color:#aaa}.about-copy strong{display:block;font-size:clamp(38px,5.2vw,78px);line-height:1.22;font-weight:500;letter-spacing:-2px;margin-top:24px}.about-copy em{display:block;font-style:normal;color:#8e8e8e;font-size:13px;line-height:1.6;letter-spacing:1.6px;margin-top:26px}.about-open{display:flex;align-items:center;gap:16px;color:#bbb;font-size:14px;white-space:nowrap}.about-open b{width:52px;height:52px;border:1px solid #777;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:22px;font-weight:400}
.about-dialog{width:min(1180px,calc(100% - 30px));max-height:94vh;padding:0;background:#f5f5f3;color:#222}.about-dialog .close{right:calc((100vw - min(1180px,calc(100vw - 30px)))/2 + 18px);top:calc(3vh + 18px);background:#161616;color:#fff;border-radius:50%}.about-detail{font-size:17px;line-height:1.95}.about-detail section{padding:80px 8%;border-bottom:1px solid #d9d9d6}.about-detail h3{font-size:clamp(30px,4vw,52px);font-weight:500;line-height:1.3;margin:0 0 30px;letter-spacing:-1px}.about-detail p{color:#666;margin:0 0 18px}.about-detail strong{color:#222}
.about-hero{min-height:560px!important;padding:76px 8%!important;display:flex!important;flex-direction:column;justify-content:flex-end;background:#181818;color:#fff;border:0!important}.about-hero small{letter-spacing:2px;color:#999}.about-hero h2{font-size:clamp(48px,7vw,92px);line-height:1.15;font-weight:500;letter-spacing:-3px;margin:30px 0}.about-hero p{color:#8b8b8b;font-size:13px;line-height:1.7;letter-spacing:2px;margin:0}.about-lead>p{font-size:clamp(19px,2.2vw,27px);line-height:1.9;max-width:900px;color:#555}
.capability-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:46px;border-top:1px solid #ccc;border-left:1px solid #ccc}.capability-grid>div{padding:34px;border-right:1px solid #ccc;border-bottom:1px solid #ccc}.capability-grid b{font-size:23px;font-weight:500}.capability-grid p{font-size:15px;line-height:1.8;margin:12px 0 0}
.split-copy{display:grid;grid-template-columns:1fr 1fr;gap:10%!important;background:#292929;color:#fff}.split-copy h3{font-size:36px}.split-copy p{color:#bbb}.split-copy strong{color:#fff}.questions{display:flex;flex-direction:column;gap:4px;font-size:21px}.value{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.value p{font-size:24px;line-height:1.9;color:#333}
.team{background:#101010;color:#fff;border:0!important}.team-title{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:42px}.team-title small{color:#777;letter-spacing:2px}.team-title h3{margin:0}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.team-grid img{display:block;width:100%;height:auto;background:#222}
@media(max-width:700px){.about{display:block}.about-copy strong{font-size:38px;letter-spacing:-1px}.about-copy em{font-size:11px}.about-open{margin-top:38px}.about-detail{font-size:16px}.about-detail section{padding:55px 7%}.about-hero{min-height:480px!important;padding:55px 7%!important}.about-hero h2{font-size:45px;letter-spacing:-2px}.capability-grid,.split-copy,.value,.team-grid{grid-template-columns:1fr}.capability-grid>div{padding:25px}.split-copy>div+div{margin-top:35px}.value p{font-size:20px}.team-grid{gap:16px}.about-dialog .close{right:23px;top:calc(3vh + 12px)}}
.about-hero{align-items:flex-start}
.banner button{position:relative;display:block;width:100%;padding:0;border:0;background:#000;color:#fff;overflow:hidden}.banner button img{transition:transform .5s,opacity .3s}.banner button:hover img{transform:scale(1.012);opacity:.92}.banner button span{position:absolute;right:28px;bottom:24px;padding:11px 16px;background:#000b;border:1px solid #ffffff55;font-size:13px;letter-spacing:1px}
@media(max-width:700px){.banner button span{right:12px;bottom:10px;padding:8px 11px;font-size:11px}}
.banner{position:relative;overflow:hidden}.banner-track{position:relative;aspect-ratio:2.8/1}.banner .banner-slide{position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .65s ease}.banner .banner-slide.active{opacity:1;visibility:visible;pointer-events:auto}.banner .banner-slide img{width:100%;height:100%;object-fit:cover}
.banner .banner-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:46px;height:46px;padding:0;border:1px solid #ffffff77;border-radius:50%;background:#0005;color:#fff;font-size:32px;line-height:1;display:grid;place-items:center;opacity:.75;transition:opacity .2s,background .2s}.banner .banner-arrow:hover{opacity:1;background:#0009}.banner .banner-arrow.prev{left:22px}.banner .banner-arrow.next{right:22px}
.banner-dots{position:absolute;z-index:3;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:9px}.banner .banner-dots button{position:static;width:26px;height:3px;padding:0;border:0;border-radius:0;background:#ffffff66;overflow:hidden}.banner .banner-dots button.active{background:#fff}
@media(max-width:700px){.banner-track{aspect-ratio:2.8/1}.banner .banner-arrow{width:34px;height:34px;font-size:24px}.banner .banner-arrow.prev{left:8px}.banner .banner-arrow.next{right:8px}.banner-dots{bottom:7px}.banner .banner-dots button{width:18px}.banner .banner-slide span{display:none}}
.case-videos{padding:64px 5%;background:#111;color:#fff}.video-heading{margin-bottom:28px}.video-heading small{color:#888;letter-spacing:2px}.video-heading h3{font-size:36px;font-weight:500;margin:12px 0}.video-heading p{margin:0;color:#999;font-size:14px}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.video-grid.single{grid-template-columns:1fr}.video-grid figure{margin:0}.video-grid video{display:block;width:100%;aspect-ratio:16/9;background:#000;object-fit:contain}.video-grid figcaption{padding-top:12px;color:#aaa;font-size:13px;letter-spacing:.5px}
@media(max-width:700px){.case-videos{padding:42px 16px}.video-heading h3{font-size:28px}.video-grid{grid-template-columns:1fr;gap:28px}}
