:root{--navy:#102c40;--ink:#182f3c;--muted:#63717a;--blue:#2a627e;--pale:#f1f4f4;--line:#d9e0e3;--white:#fff;--accent:#a1c5d3;--font:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;color:var(--ink);background:#fff;font-family:var(--font);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}button{color:inherit}a,button,input,select,textarea{outline-offset:5px}::selection{color:white;background:#2a627e}h1,h2,h3,p{margin:0}button{border:0}button:disabled{cursor:default}section[id]{scroll-margin-top:20px}.container{max-width:1280px;width:calc(100% - 112px);margin-inline:auto}.skip-link{position:fixed;top:-60px;left:20px;background:white;z-index:100;padding:12px}.skip-link:focus{top:10px}
.site-header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.98);border-bottom:1px solid rgba(16,44,64,.06)}.brand{display:flex;gap:12px;align-items:center;flex-shrink:0}.brand-mark{width:45px;height:45px;color:var(--navy)}.brand-name{font-size:26px;font-weight:750;letter-spacing:4px;line-height:1.15}.brand-name small{display:block;letter-spacing:1.2px;font-family:Arial,sans-serif;font-size:8px;font-weight:600;margin-top:8px;color:#506a79}.site-header nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:500}.site-header nav>a:not(.nav-contact){padding:12px 0;position:relative}.site-header nav>a:not(.nav-contact):after{content:"";position:absolute;bottom:3px;left:0;width:0;height:2px;background:var(--blue);transition:width .2s}.site-header nav>a:hover:after{width:100%}.nav-contact{margin-left:10px;border-left:1px solid var(--line);padding:10px 0 10px 28px;color:var(--blue)}.nav-contact span{font-size:22px;margin-left:22px}.menu-toggle{display:none}
.hero{height:650px;min-height:580px;position:relative;background:#203742;color:white;isolation:isolate;overflow:hidden}.hero-image{position:absolute;inset:0;height:100%;object-position:55% 44%;z-index:-3}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(8,30,45,.96) 0%,rgba(11,35,50,.82) 35%,rgba(8,30,45,.2) 75%,rgba(8,30,45,.16)),linear-gradient(0deg,rgba(7,26,39,.7),transparent 35%)}.hero-inner{padding-top:83px}.eyebrow{font:600 10px/1.5 Arial,sans-serif;letter-spacing:2px;color:#55788c;margin-bottom:25px}.eyebrow.light{color:#afc6d1}.hero .eyebrow{display:flex;gap:12px;align-items:center;font-size:9px;letter-spacing:2.2px}.eyebrow .line{display:inline-block;width:27px;height:1px;background:#a4c1ce}.hero h1{font-weight:600;font-size:70px;letter-spacing:5px;line-height:1.3;margin-left:-3px}.heading-dot{color:#a3c6d4}.hero-description{color:#c7d6df;font-size:16px;line-height:1.95;margin-top:25px;letter-spacing:1px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:36px;font-size:13px;font-weight:600;min-height:50px;padding:0 23px;transition:background .2s,color .2s,transform .2s;border:1px solid transparent}.button span{font-size:22px;font-weight:400}.button-white{background:#fff;color:var(--navy);margin-top:32px}.button-white:hover{background:#d9e7ec;transform:translateY(-2px)}.button-navy{background:var(--navy);color:white}.button-navy:hover{background:#285770}.hero-caption{position:absolute;bottom:38px;right:4%;display:flex;gap:12px;align-items:center;color:#e1e9ed;font-size:10px;letter-spacing:1.3px}.live-dot{width:5px;height:5px;background:#b6d4df;border-radius:50%}.caption-line{height:1px;width:54px;background:#a0b2bd;margin:0 7px}.hero-scroll{position:absolute;bottom:36px;left:4%;display:flex;gap:30px;align-items:center;font-size:10px;letter-spacing:2px;color:#a6bdca}.hero-scroll>span:last-child{font-size:20px;color:white}
.expertise-bar{background:var(--navy);color:white}.expertise-inner{display:grid;grid-template-columns:1.18fr repeat(4,1fr);align-items:center;min-height:109px}.expertise-inner>p{font-size:11px;line-height:1.95;color:#a9bdc9;letter-spacing:1px}.expertise-inner>p strong{color:#fff;font-size:14px;font-weight:500}.expertise-inner>a{display:flex;align-items:center;gap:18px;border-left:1px solid #345063;padding:13px 24px;font-size:15px;white-space:nowrap}.expertise-inner>a>span:first-child{font:10px Arial,sans-serif;color:#85a5b8}.expertise-inner .small-arrow{margin-left:auto;color:#a6c4d3;font-size:19px;transition:transform .2s}.expertise-inner>a:hover .small-arrow{transform:translate(3px,-3px)}
.section{padding-top:100px;padding-bottom:100px}.section-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:47px}.section-intro .eyebrow{margin-bottom:19px}h2{font-size:36px;line-height:1.5;letter-spacing:1.3px;font-weight:600}.intro-copy{font-size:13px;line-height:2.15;color:var(--muted);padding-bottom:6px;max-width:450px}.solution-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.solution-card{background:none;text-align:left;padding:0;width:100%}.solution-image{height:240px;background:#e4e9e9;position:relative;overflow:hidden}.solution-image img{height:100%;transition:transform .5s,filter .5s;filter:saturate(.65)}.solution-card:nth-child(2) img{object-position:50% 42%}.solution-card:nth-child(4) img{object-position:center}.solution-card:hover img{transform:scale(1.05);filter:saturate(1)}.solution-image:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(4,26,37,.65))}.image-index{position:absolute;bottom:17px;left:18px;z-index:1;color:white;font:9px Arial,sans-serif;letter-spacing:1.5px}.solution-title{display:flex;justify-content:space-between;align-items:center;margin-top:21px}.solution-title h3{font-size:19px;font-weight:600;letter-spacing:.5px}.round-arrow{font-size:21px;border:1px solid #d9e0e3;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;transition:background .2s,color .2s}.solution-card:hover .round-arrow{background:var(--navy);color:white;border-color:var(--navy)}.solution-card>p{margin-top:12px;font-size:11px;line-height:1.8;color:var(--muted)}
.projects{color:#fff;background:#102c40}.projects .section-intro{align-items:flex-end;margin-bottom:40px}.project-tabs{display:flex;gap:22px}.project-tabs button{border-bottom:1px solid transparent;padding:13px 1px;background:none;color:#a3bac9;font-size:12px}.project-tabs button.active{color:white;border-bottom-color:#b6d3df}.project-tabs button:hover{color:white}.featured-project{display:grid;grid-template-columns:1.3fr 1fr;min-height:440px;background:#17364c}.project-photo{position:relative;overflow:hidden;min-height:440px;background:#34434a}.project-photo img{height:100%;position:absolute;inset:0;object-position:50% 44%;filter:saturate(.65)}.project-photo:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(7,30,43,.7))}.project-photo>span{position:absolute;left:26px;bottom:26px;color:white;font-size:10px;letter-spacing:1.5px;z-index:1}.project-info{padding:45px 45px 37px}.project-info .eyebrow{font-family:var(--font);font-weight:400;font-size:10px;letter-spacing:1.5px;margin-bottom:20px}.project-info h3{font-weight:500;font-size:29px;line-height:1.65;letter-spacing:1px}.project-info>p{font-size:12px;line-height:2;color:#b8cbd7;margin-top:18px;max-width:320px}.project-metric{display:flex;align-items:center;gap:22px;padding:25px 0 20px}.project-metric strong{font-size:49px;line-height:1.2;font-family:Arial,sans-serif;font-weight:400;letter-spacing:-1.5px;white-space:nowrap}.project-metric strong>span{font-size:20px;margin-left:4px;letter-spacing:0}.project-metric>div{display:flex;flex-direction:column;gap:8px;font-size:11px}.project-metric small{font-size:9px;color:#92acbe;line-height:1.5}.text-button{background:none;padding:13px 0;border-top:1px solid #3b566a;width:100%;display:flex;justify-content:space-between;align-items:center;font-size:12px}.text-button span{font-size:21px}.text-button.light{color:#eff5f7}.text-button:hover{color:#a9d8ed}.source-note{font-size:9px;color:#8aa6b8;margin-top:19px;letter-spacing:.3px;line-height:1.7}
.about{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.about-image{height:450px;position:relative;overflow:hidden}.about-image img{height:100%;object-position:43% center;filter:saturate(.45)}.about-image:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(9,31,45,.75))}.image-label{position:absolute;bottom:28px;left:30px;z-index:1;display:flex;flex-direction:column;gap:12px;color:white}.image-label>span{font:500 28px Arial,sans-serif;letter-spacing:5px}.image-label small{font-size:10px;letter-spacing:2px}.about-copy>.eyebrow{margin-bottom:19px}.about-copy>p{font-size:12px;line-height:2.1;color:var(--muted);margin-top:21px;max-width:460px}.locations{border-top:1px solid var(--line);margin-top:30px;padding-top:23px}.locations>span{font-size:10px;color:var(--muted)}.locations>div{display:flex;gap:19px;align-items:center;margin-top:14px}.locations strong{font-size:15px;font-weight:500;white-space:nowrap}.locations i{height:4px;width:4px;border-radius:50%;background:#90acb9}.locations small{display:block;font-size:9px;color:#778994;margin-top:14px}
.quality{background:#f1f4f4;padding:60px 0 65px}.quality-inner>.eyebrow{margin-bottom:14px}.quality-inner{display:grid;grid-template-columns:1fr 1.4fr;gap:55px;align-items:start}.quality h2{font-size:24px;letter-spacing:.3px}.quality .eyebrow{margin-bottom:15px}.quality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.quality-grid>div{border-left:1px solid #cbd6dc;padding-left:20px}.quality-number{font:8px Arial,sans-serif;letter-spacing:1.2px;color:#647f90;white-space:nowrap}.quality h3{font-size:15px;font-weight:600;margin:17px 0 11px}.quality p{font-size:11px;line-height:1.95;color:var(--muted)}
.contact{padding:83px 0 80px;background:#255671;color:white;position:relative;overflow:hidden;isolation:isolate}.contact-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.contact h2{font-size:35px;line-height:1.55;letter-spacing:1.3px}.contact .eyebrow{font-size:9px;margin-bottom:20px;color:#b2d0de}.contact p{color:#bcd0dc;font-size:12px;margin-top:23px;letter-spacing:1px}.contact-action{padding:22px 0;background:transparent;color:white;border-bottom:1px solid #9bbac9;display:flex;align-items:center;gap:70px;font-size:15px;position:relative}.contact-action span{font-size:33px;transition:transform .2s}.contact-action:hover span{transform:translate(4px,-4px)}.contact-watermark{position:absolute;bottom:-24px;right:-18px;z-index:-1;color:rgba(255,255,255,.035);font:700 195px/1 Arial,sans-serif;letter-spacing:-12px;pointer-events:none}.site-footer{padding:37px 0;background:#fff}.footer-inner{display:flex;justify-content:space-between;align-items:center}.footer-inner strong{font-size:12px;letter-spacing:1px;font-weight:500}.footer-inner p{font-size:10px;color:var(--muted);margin-top:10px;letter-spacing:1px}.footer-right{display:flex;align-items:center;gap:40px;color:var(--muted);font-size:10px}.footer-right>a:hover{color:var(--blue)}
dialog{padding:0;border:0;background:#fff;color:var(--ink);box-shadow:0 20px 90px #0015234d;max-height:90dvh;width:min(880px,calc(100% - 36px));overflow-y:auto}dialog::backdrop{background:#061c2ec2;backdrop-filter:blur(6px)}body:has(dialog[open]){overflow:hidden}.dialog-close{position:absolute;right:14px;top:14px;z-index:2;background:white;color:var(--navy);width:35px;height:35px;border-radius:50%;font-size:25px;line-height:1}.detail-dialog[open]{display:grid;grid-template-columns:1fr 1.1fr}.detail-dialog>img{height:100%;min-height:530px;object-position:50% 45%}.dialog-copy{padding:46px 38px}.dialog-copy h2{font-size:27px}.dialog-copy>p{font-size:13px;line-height:1.95;color:var(--muted);margin-top:20px}.dialog-copy ul{padding-left:17px;font-size:12px;line-height:2.2}.dialog-copy .dialog-source{font-size:10px;border-top:1px solid var(--line);padding-top:17px;margin-top:20px}.dialog-copy>.button{margin-top:24px;font-size:12px}.contact-dialog{width:min(520px,calc(100% - 36px));padding:40px}.contact-dialog h2{font-size:26px}.contact-dialog .eyebrow{margin-bottom:18px}.contact-dialog>p{font-size:12px;line-height:1.9;color:var(--muted);margin:14px 0 25px}form label{display:flex;justify-content:space-between;font-size:12px;margin:19px 0 9px}form label>span{font-size:10px;color:var(--muted)}form select,form input,form textarea{width:100%;border:1px solid #ccd7de;background:#f8fafb;border-radius:0;padding:12px;font-size:12px;color:var(--ink)}form textarea{resize:vertical;line-height:1.8}form .button{width:100%;margin-top:24px}.form-note{font-size:10px;color:var(--muted);line-height:1.9;margin-top:15px}#brief-status{font-size:12px;color:#266c56;line-height:1.6;margin-top:10px}
@media(min-width:1600px){.hero{height:720px}.hero-inner{padding-top:100px}.hero h1{font-size:80px}.hero-caption{right:calc((100vw - 1280px)/2)}.hero-scroll{left:calc((100vw - 1280px)/2)}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.site-header{padding:0 32px}.site-header nav{gap:20px;font-size:12px}.nav-contact{margin-left:0;padding-left:18px}.nav-contact span{margin-left:8px}.brand-name{font-size:23px;letter-spacing:3px}.brand-mark{width:38px}.brand-name small{font-size:7px}.expertise-inner>a{padding:13px 17px;font-size:13px;gap:10px}.expertise-inner>p{font-size:10px}.expertise-inner>p strong{font-size:12px}.solution-grid{gap:18px}.solution-image{height:215px}.solution-title h3{font-size:17px}.section{padding-top:80px;padding-bottom:80px}.hero-inner{padding-top:88px}.hero h1{font-size:64px}.hero-scroll{left:32px}.hero-caption{right:32px}.about{gap:50px}.about-image{height:430px}.project-info{padding:35px 30px}.quality-inner{grid-template-columns:1fr;gap:35px}.quality-grid{gap:35px}.quality-grid>div{padding-left:24px}.contact h2{font-size:32px}.project-metric{gap:14px}.project-metric strong{font-size:44px}}
@media(max-width:800px){html{scroll-padding-top:76px}.site-header{height:76px;padding:0 24px}.brand-name{font-size:22px}.brand-mark{width:36px;height:38px}.brand-name small{font-size:6px;letter-spacing:1px;margin-top:6px}.menu-toggle{display:flex;flex-direction:column;gap:6px;justify-content:center;align-items:center;width:40px;height:40px;padding:8px;background:none}.menu-toggle span{display:block;height:1px;width:23px;background:var(--navy);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.site-header nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:15px 25px 25px;border-bottom:1px solid var(--line);box-shadow:0 18px 25px #0b2c4012;align-items:stretch;gap:6px}.site-header nav.open{display:flex;flex-direction:column}.nav-contact{border-left:0;padding:12px 0;margin:0;display:flex;justify-content:space-between}.site-header nav>a{font-size:14px}.container{width:calc(100% - 48px)}.hero{height:600px;min-height:0}.hero-inner{padding-top:76px}.hero h1{font-size:58px}.hero .eyebrow{font-size:8px;letter-spacing:1.3px}.hero-shade{background:linear-gradient(90deg,#081e2df2,#0b2332b3 60%,#081e2d77),linear-gradient(0deg,#071a27b3,transparent 35%)}.hero-description{font-size:15px}.hero-scroll{left:24px}.hero-caption{right:24px}.expertise-inner{grid-template-columns:repeat(4,1fr);min-height:90px}.expertise-inner>p{display:none}.expertise-inner>a{font-size:12px;padding:10px 12px;gap:8px}.expertise-inner>a:first-of-type{border-left:0;padding-left:0}.expertise-inner>a:last-of-type{padding-right:0}.expertise-inner>a .small-arrow{display:none}.expertise-inner>a>span:first-child{font-size:9px}.section-intro{gap:25px;align-items:flex-start;flex-direction:column;margin-bottom:34px}h2{font-size:30px}.intro-copy{font-size:12px}.solution-grid{grid-template-columns:repeat(2,1fr);gap:32px 20px}.solution-image{height:250px}.solution-title{margin-top:16px}.solution-title h3{font-size:18px}.solution-card>p{margin-top:8px}.projects .section-intro{align-items:flex-start;gap:14px}.project-tabs{gap:28px}.featured-project{grid-template-columns:1fr 1fr}.project-photo{min-height:400px}.project-info{padding:30px 25px}.project-info h3{font-size:23px}.project-info>p{font-size:11px}.project-metric{flex-direction:column;align-items:flex-start;gap:10px;padding-top:20px}.project-metric>div{gap:4px}.project-metric strong{font-size:39px}.project-photo>span{font-size:8px;left:15px}.about{gap:30px}.about-image{height:455px}.about-copy h2{font-size:27px}.about-copy>.eyebrow{font-size:8px;letter-spacing:1px}.locations>div{flex-wrap:wrap;gap:10px}.locations strong{font-size:12px}.contact-action{gap:30px;font-size:13px}.contact h2{font-size:28px}.contact-watermark{font-size:140px}.footer-right{gap:20px}.detail-dialog[open]{grid-template-columns:1fr 1.2fr}.dialog-copy{padding:45px 24px 25px}.dialog-copy h2{font-size:24px}}
@media(max-width:520px){.hero{height:585px}.hero-inner{padding-top:65px}.hero h1{font-size:49px;letter-spacing:3px;line-height:1.4}.hero .eyebrow{font-size:6px;letter-spacing:1.05px;gap:7px;margin-bottom:30px}.eyebrow .line{width:16px}.hero-description{font-size:13px;letter-spacing:.8px;margin-top:22px;line-height:2}.hero .button{margin-top:29px;min-height:47px;padding:0 19px;font-size:12px;gap:35px}.hero-image{object-position:67% center}.hero-caption{bottom:30px;font-size:8px;gap:8px;letter-spacing:.2px}.caption-line{width:20px;margin:0 3px}.hero-scroll{bottom:28px;font-size:9px;gap:16px}.expertise-inner{grid-template-columns:1fr 1fr;min-height:auto;padding-top:14px;padding-bottom:14px;gap:0}.expertise-inner>a{padding:15px 12px;font-size:12px}.expertise-inner>a:nth-of-type(odd){border-left:0;padding-left:0}.expertise-inner>a:nth-of-type(3),.expertise-inner>a:nth-of-type(4){border-top:1px solid #345063}.expertise-inner>a .small-arrow{display:block;margin-right:5px}.section{padding-top:63px;padding-bottom:63px}h2{font-size:28px;letter-spacing:.5px}.eyebrow{font-size:9px;letter-spacing:1.7px;margin-bottom:17px}.intro-copy{font-size:12px;line-height:2}.desktop-break{display:none}.solution-grid{gap:29px 15px}.solution-image{height:187px}.image-index{left:11px;bottom:12px;font-size:6px;letter-spacing:.9px}.solution-title h3{font-size:16px}.round-arrow{height:26px;width:26px;font-size:17px}.solution-card>p{font-size:10px;max-width:135px}.projects h2{font-size:26px}.project-tabs{gap:27px}.project-tabs button{font-size:11px}.featured-project{grid-template-columns:1fr}.project-photo{height:300px;min-height:0}.project-photo img{object-position:50% 39%}.project-photo>span{font-size:8px;left:21px;bottom:22px}.project-info{padding:30px 25px 21px}.project-info h3{font-size:26px}.project-info>p{font-size:12px}.project-metric{flex-direction:row;align-items:center;gap:22px;padding:24px 0}.project-metric strong{font-size:47px}.project-metric>div{gap:7px}.source-note{font-size:8px}.about{grid-template-columns:1fr;gap:35px}.about-image{height:330px}.about-copy h2{font-size:29px}.about-copy>.eyebrow{font-size:9px}.about-copy>p{font-size:12px}.locations>div{gap:17px}.locations strong{font-size:14px}.quality{padding:49px 0}.quality h2{font-size:22px}.quality-grid{grid-template-columns:1fr;gap:23px}.quality-grid>div{display:grid;grid-template-columns:1fr 1.1fr;border-left:0;border-top:1px solid #ccd6db;padding:20px 0 0;column-gap:15px}.quality-number{grid-column:1;grid-row:1;font-size:8px;align-self:start}.quality-grid h3{grid-column:1;grid-row:2;margin:10px 0 0;font-size:15px}.quality-grid p{grid-column:2;grid-row:1/3;align-self:center;font-size:11px}.contact{padding:58px 0}.contact-inner{flex-direction:column;align-items:flex-start;gap:32px}.contact h2{font-size:27px}.contact p{font-size:10px}.contact-action{gap:60px;padding:12px 0;font-size:13px}.contact-watermark{font-size:98px;bottom:-5px;letter-spacing:-5px}.site-footer{padding:28px 0}.footer-inner{align-items:flex-start;gap:25px;flex-direction:column}.footer-right{width:100%;justify-content:space-between;font-size:9px}.detail-dialog[open]{display:block}.detail-dialog>img{height:240px;min-height:0}.dialog-copy{padding:27px 24px}.dialog-copy .eyebrow{font-size:8px}.dialog-copy h2{font-size:23px}.dialog-copy>p{font-size:12px;margin-top:15px}.contact-dialog{padding:35px 24px 25px}.contact-dialog h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
