:root{--navy:#101925;--ink:#14202e;--muted:#52616d;--paper:#fff;--pale:#edf0f0;--line:#d5dddf;--accent:#bfd0d7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--paper);color:var(--ink);line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #789bae;outline-offset:5px}a:hover{color:#557486}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(3.4rem,6.6vw,7rem)}h2{font-size:clamp(2.3rem,4.2vw,4.4rem)}h3{font-size:1.5rem}p{color:var(--muted)}em{font-family:Georgia,'Times New Roman',serif;font-weight:400}.wrap{padding-left:clamp(24px,5.5vw,100px);padding-right:clamp(24px,5.5vw,100px);max-width:1800px;margin:auto}.section{padding-top:100px;padding-bottom:100px}.eyebrow{font-size:.7rem;letter-spacing:.18em;font-weight:600;display:block;line-height:1.5;margin-bottom:24px}.header{height:100px;padding:20px clamp(24px,4vw,72px);display:flex;align-items:center;justify-content:space-between;background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #e5e9ea}.brand img{width:170px;height:auto;object-fit:contain}.header nav{display:flex;gap:30px;align-items:center;font-size:.87rem}.header nav a{padding:8px 0}.header nav [aria-current]{border-bottom:1px solid var(--ink)}.nav-cta{border:1px solid var(--ink);padding:12px 18px!important;margin-left:14px}.nav-cta span{padding-left:18px}.menu-toggle{display:none;background:none;border:0}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:white;z-index:100}.skip:focus{top:10px}.hero{background:var(--navy);color:white;display:grid;grid-template-columns:1.05fr 1fr;min-height:680px}.hero-copy{padding:75px 4vw 35px 5.5vw;display:flex;flex-direction:column;align-items:flex-start}.hero .eyebrow{color:#bfd0d7;margin-bottom:40px}.hero h1{font-size:clamp(3.8rem,5.6vw,6.4rem);letter-spacing:-.055em;line-height:1.04}.hero h1 em{color:#c4d0d4}.hero p{color:#d1d8dd;margin-top:30px;font-size:.97rem}.actions{display:flex;align-items:center;gap:26px;margin-top:35px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:34px;padding:15px 24px;font-size:.83rem;border:1px solid transparent;cursor:pointer}.light{background:#fff;color:var(--navy)}.light:hover{background:#e1e7e9;color:var(--navy)}.navy{background:var(--navy);color:#fff}.navy:hover{background:#2d4458;color:white}.text-link{font-size:.85rem;display:inline-block;border-bottom:1px solid #86959e;padding:8px 0}.text-link span{margin-left:16px}.dark{color:var(--ink)}.hero-note{border-top:1px solid #465361;margin-top:auto;padding-top:25px;width:100%;font-size:.67rem;letter-spacing:.07em;display:flex;justify-content:space-between;gap:18px;color:#c5cfd4}.hero-image{padding:26px 26px 26px 0;overflow:hidden}.hero-image img{width:100%;height:100%;min-height:620px;object-position:center}.discipline-strip{display:flex;justify-content:space-between;gap:20px;padding-top:25px;padding-bottom:25px;border-bottom:1px solid var(--line);font-size:.7rem;letter-spacing:.15em}.intro{display:grid;grid-template-columns:1fr 1.4fr}.intro h2{margin-bottom:30px}.intro p{max-width:650px;margin-bottom:20px}.intro .text-link{margin-top:8px}.work{background:#f2f4f3}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:44px}.section-heading p{max-width:400px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px 28px}.project-grid.featured{grid-template-columns:1.3fr 1fr}.featured .project-card:first-child{grid-row:span 2}.project-card img{width:100%;height:390px;transition:transform .5s ease}.featured .project-card:first-child img{height:730px}.featured .project-card:not(:first-child) img{height:280px}.project-card a{display:block;overflow:hidden}.project-card a:hover img{transform:scale(1.018)}.project-label{padding-top:22px;display:flex;justify-content:space-between;align-items:center}.project-label .eyebrow{margin:0 0 8px;font-size:.61rem;color:var(--muted)}.project-label p{font-size:.85rem;margin-top:7px}.arrow{font-size:1.8rem}.services-preview{background:var(--navy);color:white}.services-preview p{color:#bac5ce}.service-list{border-top:1px solid #465361;margin-top:54px}.service-list>a{display:grid;grid-template-columns:70px 1.1fr 1fr 40px;gap:20px;align-items:center;padding:30px 0;border-bottom:1px solid #465361}.service-list a:hover{color:#bfd0d7}.service-list h3{font-size:1.8rem}.number{font-size:.7rem;letter-spacing:.12em;color:#bac5ce}.service-list p{font-size:.84rem}.process h2{margin-bottom:45px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.process-grid>div{border-top:1px solid var(--line);padding-top:23px}.process-grid span{font-size:.75rem;color:var(--muted)}.process-grid h3{margin:24px 0 15px}.process-grid p{font-size:.92rem}.cta{padding-top:80px;padding-bottom:80px;background:#e5eaeb}.cta>div{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta .button{background:var(--navy);color:white}.footer{background:var(--navy);color:white;padding-top:55px;padding-bottom:25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:35px;padding-bottom:50px}.footer img{width:190px;height:auto;object-fit:contain}.footer p{font-size:.85rem;color:#bbc6ce}.footer-top>div{display:grid;gap:8px;font-size:.9rem}.footer-bottom{border-top:1px solid #465361;padding-top:22px;display:flex;justify-content:space-between;gap:25px}.footer-bottom p,.footer-bottom a{font-size:.68rem;color:#bac5ce}.footer-bottom>div{display:flex;gap:24px}.page-head{padding-top:85px;padding-bottom:70px;background:#f2f4f3}.page-head p{margin-top:28px;font-size:1.08rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split>img{width:100%;height:570px}.split h2{margin-bottom:25px}.split p{margin-bottom:20px}.sector-section{background:var(--navy);color:#fff}.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:55px}.sector-grid>div{border-top:1px solid #465361;padding-top:25px}.sector-grid p{color:#c5cdd3;margin-top:20px;font-size:.92rem}.anchor-nav{display:flex;gap:35px;padding-top:30px;padding-bottom:30px;border-bottom:1px solid var(--line);font-size:.82rem;flex-wrap:wrap}.anchor-nav a{text-decoration:underline;text-underline-offset:5px}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-bottom:1px solid var(--line)}.service-detail h2{margin-bottom:28px}.lead{font-size:1.2rem;max-width:400px}.capability-list{list-style:none;padding:0;margin:30px 0}.capability-list li{padding:14px 0;border-bottom:1px solid var(--line)}.capability-list li:before{content:'＋';margin-right:17px;color:var(--muted)}.portfolio-section{padding-top:40px;padding-bottom:100px}.filters{display:flex;gap:12px;flex-wrap:wrap}.filters button{border:1px solid var(--line);padding:11px 18px;background:white;cursor:pointer;font-size:.82rem}.filters .selected{background:var(--navy);color:#fff;border-color:var(--navy)}.filter-status{font-size:.75rem;margin:18px 0 35px}.project-card[hidden]{display:none}.project-head{padding-top:60px;padding-bottom:50px}.project-head>.text-link{margin-bottom:36px}.project-head .eyebrow{margin-bottom:20px}.project-head p{font-size:1.2rem;margin-top:20px}.project-main img{height:650px;width:100%;object-fit:cover}.project-info{display:grid;grid-template-columns:1fr 1fr;gap:70px}.project-info dl{margin:0 0 25px}.project-info dl>div{display:flex;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);padding:14px 0}.project-info dt{font-size:.8rem;color:var(--muted)}.project-info dd{margin:0;text-align:right}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-bottom:90px}.gallery img{width:100%;height:540px}.gallery img:only-child{grid-column:1/-1;height:640px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.contact-link{display:block;font-size:clamp(1.1rem,2.1vw,1.8rem);margin:24px 0;letter-spacing:-.03em}.address{margin-top:45px;margin-bottom:35px}.address .eyebrow{margin-bottom:18px}.contact-grid form{background:#f2f4f3;padding:40px}.contact-grid form h2{font-size:2.1rem;margin-bottom:20px}.contact-grid form p{font-size:.85rem;margin-bottom:20px}.contact-grid label{display:block;margin:22px 0 8px;font-size:.8rem}.contact-grid input,.contact-grid textarea,.contact-grid select{width:100%;background:#fff;border:1px solid #abb7be;padding:12px;color:var(--ink);border-radius:0}.contact-grid .small{font-size:.72rem;margin:20px 0}.small{font-size:.8rem}.small a,.prose a{text-decoration:underline;text-underline-offset:4px}.prose{max-width:1000px;min-height:500px}.prose h2{font-size:2rem;margin-bottom:20px;margin-top:40px}.prose h2:first-child{margin-top:0}.prose p{margin-bottom:20px}.prose li{padding:10px 0;color:var(--muted)}
@media(min-width:1801px){.hero-copy{padding-left:max(5.5vw,calc((100vw - 1600px)/2))}.hero-image{padding-right:max(26px,calc((100vw - 1750px)/2))}}
@media(max-width:1100px){.header nav{gap:20px}.nav-cta{margin-left:0}.hero-copy{padding-top:60px}.hero{min-height:620px}.hero h1{font-size:4rem}.hero-image img{min-height:550px}.hero-note{flex-direction:column;gap:6px;margin-top:45px}.split{gap:35px}.contact-grid{gap:40px}.service-list>a{grid-template-columns:40px 1fr 1fr 30px}.section{padding-top:75px;padding-bottom:75px}}
@media(max-width:900px){.header{height:85px}.brand img{width:145px}.menu-toggle{display:flex;gap:15px;align-items:center;padding:10px;font-size:.85rem}.header nav{display:none;position:absolute;top:85px;left:0;right:0;padding:25px;background:white;box-shadow:0 15px 20px #10192515;align-items:stretch}.header nav.open{display:flex;flex-direction:column;gap:12px}.header nav a{padding:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 24px 35px}.hero h1{font-size:clamp(3.8rem,8vw,6rem)}.hero-image{padding:0 24px 24px;height:420px}.hero-image img{min-height:0}.hero-note{margin-top:45px;flex-direction:row}.intro{grid-template-columns:1fr;gap:15px}.split{grid-template-columns:1fr}.split>img{height:420px}.service-list>a{grid-template-columns:30px 1fr 25px}.service-list p{grid-column:2;grid-row:2}.service-list .arrow{grid-column:3;grid-row:1}.service-list h3{font-size:1.7rem}.service-detail,.project-info{gap:35px}.contact-grid{grid-template-columns:1fr}.contact-grid form{padding:30px}.footer-top{flex-wrap:wrap}.project-card img{height:310px}.featured .project-card:first-child img{height:650px}.featured .project-card:not(:first-child) img{height:230px}.project-main img{height:480px}.gallery img{height:400px}.sector-grid{grid-template-columns:1fr 1fr}.process-grid{gap:25px}.footer-bottom{flex-direction:column}}
@media(max-width:600px){h1{font-size:3.3rem}h2{font-size:2.65rem}.section{padding-top:60px;padding-bottom:60px}.hero h1{font-size:3.65rem}.hero .eyebrow{font-size:.6rem;margin-bottom:30px}.hero p{font-size:.9rem}.hero-image{height:340px}.hero-note{font-size:.58rem}.discipline-strip{display:grid;grid-template-columns:1fr 1fr;font-size:.6rem;gap:12px}.section-heading{align-items:flex-start;flex-direction:column;gap:15px}.project-grid,.project-grid.featured{grid-template-columns:1fr;gap:35px}.featured .project-card:first-child{grid-row:auto}.project-card img,.featured .project-card:first-child img,.featured .project-card:not(:first-child) img{height:300px}.project-label h3{font-size:1.5rem}.process-grid{grid-template-columns:1fr;gap:30px}.process-grid h3{margin-top:15px}.cta>div{flex-direction:column;align-items:flex-start;gap:30px}.cta{padding-top:55px;padding-bottom:55px}.footer-top{display:grid;gap:30px;padding-bottom:30px}.footer-bottom>div{flex-wrap:wrap;gap:16px}.page-head{padding-top:55px;padding-bottom:50px}.page-head p{font-size:.95rem}.split>img{height:320px}.sector-grid{grid-template-columns:1fr}.anchor-nav{gap:15px 25px}.service-detail,.project-info{grid-template-columns:1fr;gap:28px}.project-main img{height:340px}.project-head h1{font-size:3rem}.project-info dl>div{font-size:.88rem}.gallery{grid-template-columns:1fr;padding-bottom:60px}.gallery img,.gallery img:only-child{height:auto;max-height:650px}.contact-grid form{padding:24px}.contact-link{font-size:1.25rem}.filters button{font-size:.74rem;padding:10px 12px}.actions{gap:22px}.button{gap:24px;padding:14px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
