:root{--blue:#061ba8;--electric:#0878f9;--cyan:#42c8ff;--ink:#071225;--muted:#667286;--line:#d9e0ea;--paper:#f5f7fb;--white:#fff;--max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.6 "DM Sans",sans-serif;background:white}a{color:inherit;text-decoration:none}button{font:inherit}.page-width{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.site-header{position:fixed;z-index:20;top:0;left:0;width:100%;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(217,224,234,.8)}.nav{height:82px;width:min(var(--max),calc(100% - 48px));margin:auto;display:flex;align-items:center;gap:40px}.logo{width:218px;display:block}.logo img{display:block;width:100%;height:auto}.nav-links{margin-left:auto;display:flex;gap:30px;font-size:14px;font-weight:600}.nav-links a:hover{color:var(--blue)}.nav-cta{background:var(--blue);color:white;padding:12px 16px;font-size:13px;font-weight:700}.nav-cta span{margin-left:18px}.menu-button{display:none;background:0;border:0;padding:10px}.menu-button span{display:block;width:24px;height:2px;background:var(--ink);margin:5px}.hero{height:min(880px,95vh);min-height:700px;position:relative;display:flex;align-items:center;color:white;overflow:hidden}.hero-image,.hero-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{background:linear-gradient(90deg,rgba(3,16,149,.98) 0%,rgba(3,42,184,.91) 32%,rgba(0,77,203,.48) 60%,rgba(2,16,45,.08) 100%)}.hero-content{position:relative;padding-top:70px}.kicker{margin:0 0 22px;font:800 12px/1.2 Manrope,sans-serif;text-transform:uppercase;letter-spacing:.17em;color:var(--blue)}.kicker.light{color:#9be3ff}.hero h1{font:800 clamp(54px,6vw,92px)/.98 Manrope,sans-serif;letter-spacing:-.055em;margin:0;max-width:880px}.hero-content>p:not(.kicker){font-size:19px;line-height:1.65;color:#d9e9ff;max-width:680px;margin:30px 0}.hero-actions{display:flex;align-items:center;gap:26px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:14px 18px;font-size:14px;font-weight:700}.button.white{background:white;color:var(--ink)}.text-link{font-size:14px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:4px}.text-link span{margin-left:14px}.hero-meta{position:absolute;bottom:0;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(255,255,255,.28)}.hero-meta span{padding:18px 14px;border-right:1px solid rgba(255,255,255,.22);font-size:11px;text-transform:uppercase;letter-spacing:.09em}.section-space{padding-top:125px;padding-bottom:125px}.intro{display:grid;grid-template-columns:.7fr 1.7fr;gap:50px}.section-label{display:flex;gap:16px;align-items:flex-start}.section-label span{font:800 11px Manrope;color:var(--blue);padding-top:3px}.section-label p{margin:0;font:800 12px/1.3 Manrope;text-transform:uppercase;letter-spacing:.14em;color:var(--blue)}h2,h3,h4{font-family:Manrope,sans-serif;letter-spacing:-.04em;margin:0}.intro h2,.section-head h2,.delivery h2,.contact h2{font-size:clamp(40px,4.5vw,64px);line-height:1.07}.intro-copy>p{font-size:20px;line-height:1.7;color:var(--muted);max-width:790px}.stat-row{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:25px}.stat-row div{padding:28px 22px 0 0;border-right:1px solid var(--line)}.stat-row div+div{padding-left:22px}.stat-row strong{display:block;font:800 36px Manrope;color:var(--blue)}.stat-row span{font-size:13px;color:var(--muted)}.capabilities{background:var(--paper)}.section-head{display:grid;grid-template-columns:.7fr 1.25fr .75fr;gap:50px;align-items:start;margin-bottom:55px}.section-head>p{color:var(--muted);font-size:17px;margin:12px 0 0}.discipline-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:38px}.discipline-tabs button{border:0;background:transparent;padding:16px 0;margin-right:34px;color:var(--muted);font-weight:700;cursor:pointer;border-bottom:3px solid transparent}.discipline-tabs button.active{color:var(--blue);border-color:var(--blue)}.discipline-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px}.discipline-panel[hidden]{display:none}.cap-visual{min-height:560px;position:relative;overflow:hidden;background:#03134d}.cap-visual img{width:100%;height:100%;object-fit:cover;position:absolute}.embedded-art img{filter:saturate(.8);object-position:center}.visual-note{position:absolute;bottom:20px;left:20px;background:rgba(5,20,48,.86);color:white;padding:10px 13px;font:700 10px Manrope;letter-spacing:.12em}.cap-steps article{display:grid;grid-template-columns:44px 1fr;gap:20px;padding:22px 0;border-top:1px solid var(--line)}.cap-steps article:last-child{border-bottom:1px solid var(--line)}.cap-steps article>span{font:800 11px Manrope;color:var(--blue)}.cap-steps h3{font-size:22px}.cap-steps p{margin:7px 0 0;color:var(--muted)}.tool-line{margin-top:55px;display:flex;gap:9px;flex-wrap:wrap}.tool-line span{border:1px solid #cbd4e0;background:white;padding:7px 10px;font-size:12px}.work .section-head{margin-bottom:65px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-card{border:1px solid var(--line);background:white;overflow:hidden}.project-card.wide{grid-column:1/-1;display:grid;grid-template-columns:1.15fr .85fr}.project-image{height:260px;background:var(--paper);overflow:hidden}.wide .project-image{height:100%;min-height:440px}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-card:hover img{transform:scale(1.025)}.blue-image img{object-position:right center}.project-copy{padding:27px}.wide .project-copy{padding:50px;display:flex;flex-direction:column;justify-content:center}.project-sector,.embedded-projects article>p{font:800 10px Manrope;color:var(--blue);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px}.project-copy h3{font-size:31px}.project-copy>p:not(.project-sector){color:var(--muted)}.project-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}.project-tags span{border:1px solid var(--line);padding:6px 9px;font-size:11px}.embedded-projects{margin-top:80px;padding-top:35px;border-top:3px solid var(--blue);display:grid;grid-template-columns:1.2fr repeat(4,1fr);gap:15px}.embedded-title{padding-right:25px}.embedded-title h3{font-size:27px;line-height:1.2}.embedded-projects article img{width:100%;height:125px;object-fit:cover;margin-bottom:15px}.embedded-projects article h4{font-size:16px;line-height:1.3}.embedded-projects article span{display:block;color:var(--muted);font-size:12px;margin-top:7px}.delivery{background:linear-gradient(135deg,#071328 0%,#071c45 60%,#083f8e 100%);color:white}.delivery-grid{display:grid;grid-template-columns:.7fr 1.25fr .75fr;gap:50px}.delivery .section-label p,.delivery .section-label span{color:var(--cyan)}.delivery-copy>p{color:#afbdd2;font-size:18px;max-width:580px}.assignment-list{border-top:1px solid rgba(255,255,255,.22)}.assignment-list article{display:grid;grid-template-columns:35px 1fr;border-bottom:1px solid rgba(255,255,255,.22);padding:13px 0}.assignment-list span{color:var(--cyan);font:700 10px Manrope}.assignment-list p{margin:0;font-weight:600}.team .section-head{grid-template-columns:.7fr 1.8fr}.people-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.person{display:grid;grid-template-columns:.65fr 1.35fr;border:1px solid var(--line);min-height:530px}.portrait{background:var(--paper);overflow:hidden}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center top}.person-copy{padding:34px}.role{font:800 10px Manrope;color:var(--blue);letter-spacing:.1em;text-transform:uppercase}.person h3{font-size:31px}.person-copy>p:not(.role){color:var(--muted)}.credentials{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.credentials span{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}.person a{display:inline-block;color:var(--blue);font-weight:700;font-size:13px;margin-top:17px}.contact{background:var(--blue);color:white;padding:100px 0}.contact-inner{display:grid;grid-template-columns:1.35fr .65fr;gap:100px;align-items:end}.contact h2{max-width:800px}.contact-details p{color:#bdd8ff;margin-top:0}.contact-details a{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.3);padding:13px 0;font-weight:600;font-size:14px}.contact-details a:last-child{border-bottom:1px solid rgba(255,255,255,.3)}footer{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding-top:38px;padding-bottom:45px;font-size:12px;color:var(--muted)}footer img{width:190px}footer p:nth-child(2){text-align:center}footer p:last-child{text-align:right}.reveal{opacity:0;transform:translateY(16px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:1000px){.nav-links,.nav-cta{display:none}.menu-button{display:block;margin-left:auto}.nav.menu-open{height:auto;flex-wrap:wrap;padding-block:18px}.nav.menu-open .nav-links{display:flex;width:100%;flex-direction:column;gap:0}.nav.menu-open .nav-links a{padding:12px 0;border-top:1px solid var(--line)}.hero-meta{overflow:auto;grid-template-columns:repeat(5,180px)}.section-head,.delivery-grid{grid-template-columns:1fr 1.6fr}.section-head>p,.delivery-grid>.assignment-list{grid-column:2}.discipline-panel{grid-template-columns:1fr}.cap-visual{min-height:420px}.project-grid{grid-template-columns:1fr 1fr}.project-card.wide{grid-column:1/-1}.embedded-projects{grid-template-columns:1fr 1fr}.embedded-title{grid-column:1/-1}.people-grid{grid-template-columns:1fr}.person{min-height:480px}.contact-inner{grid-template-columns:1fr;gap:50px}}@media(max-width:650px){.page-width,.nav{width:min(100% - 30px,var(--max))}.site-header .logo{width:180px}.hero{min-height:720px}.hero h1{font-size:50px}.hero-content>p:not(.kicker){font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column}.section-space{padding-top:80px;padding-bottom:80px}.intro,.section-head,.delivery-grid{grid-template-columns:1fr}.intro-copy,.stat-row,.section-head>p,.delivery-grid>.assignment-list{grid-column:1}.stat-row{grid-template-columns:1fr}.stat-row div{border-right:0;border-bottom:1px solid var(--line);padding:18px 0!important}.discipline-tabs{overflow:auto}.discipline-tabs button{white-space:nowrap}.cap-visual{min-height:280px}.project-grid{grid-template-columns:1fr}.project-card.wide{display:block}.wide .project-image{min-height:260px}.wide .project-copy{padding:27px}.embedded-projects{grid-template-columns:1fr}.embedded-title{grid-column:1}.person{grid-template-columns:1fr}.portrait{height:380px}.contact h2{font-size:39px}footer{grid-template-columns:1fr;gap:12px}footer p:nth-child(2),footer p:last-child{text-align:left}}
