:root{--blue:#003e7e;--navy:#082a49;--ink:#182a3b;--charcoal:#353635;--muted:#526273;--pale:#f1f4f6;--line:#d7e0e6;--white:#fff;--max:1260px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px}
*{box-sizing:border-box}body{margin:0;background:#fff;line-height:1.65}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,select{font:inherit}button,a,summary,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #007fa8;outline-offset:5px}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.6rem,4.8vw,4.8rem);margin-bottom:24px;font-weight:750}h2{font-size:clamp(1.8rem,3vw,2.55rem);margin-bottom:22px}h3{font-size:1.35rem;line-height:1.22;margin-bottom:14px}p{margin-bottom:20px}figure{margin:0}button[hidden],[hidden]{display:none!important}.wrap{max-width:var(--max);padding:0 34px;margin:0 auto}.section{padding:78px 0}.pale{background:var(--pale)}.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.14em;line-height:1.55;text-transform:uppercase;color:var(--blue);margin-bottom:16px}.body-large{font-size:1.2rem;line-height:1.7}.fine-print{font-size:.88rem;line-height:1.6;color:var(--muted);margin-top:28px}.skip-link{position:absolute;top:8px;left:12px;transform:translateY(-160%);background:#fff;padding:12px 18px;z-index:100}.skip-link:focus{transform:none}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:14px 24px;background:var(--blue);color:#fff;border:1px solid var(--blue);font-weight:700;font-size:.94rem;line-height:1.4;text-align:center;transition:background .18s}.button:hover{background:var(--navy);text-decoration:none}.button.light{background:#fff;color:var(--blue);border-color:#fff}.button.light:hover{background:#dfeaf4}.button.outline{background:transparent;color:#fff;border-color:#ffffff99}.button.outline:hover{background:#ffffff16}.button.small{font-size:.88rem;padding:10px 18px;min-height:42px}.button-row{display:flex;flex-wrap:wrap;gap:12px}.text-link{display:inline-block;font-size:.94rem;font-weight:700;color:var(--blue);text-decoration:underline;text-underline-offset:6px;line-height:1.7}.text-link:hover{color:var(--ink)}
.site-header{background:white;position:relative;z-index:10;border-bottom:1px solid var(--line)}.masthead{display:flex;align-items:center;gap:28px;min-height:105px}.brand{flex:0 0 210px}.brand img{width:210px}.brand-line{font-size:.85rem;line-height:1.4;border-left:1px solid var(--line);padding-left:25px;margin:0;color:var(--muted)}.utility{display:flex;align-items:center;gap:22px;margin-left:auto;font-size:.8rem;font-weight:600}.utility>a:first-child{color:var(--blue)}.main-nav{display:flex;justify-content:space-between;align-items:center;gap:22px;border-top:1px solid var(--line);min-height:59px}.main-nav>a,.more-nav>summary{font-size:.94rem;font-weight:700;padding:16px 0;white-space:nowrap}.main-nav a[aria-current=page]{color:var(--blue);box-shadow:inset 0 -3px var(--blue)}.more-nav{position:relative}.more-nav summary{cursor:pointer}.more-nav>div{position:absolute;right:0;top:100%;width:310px;background:white;padding:15px 22px;box-shadow:0 12px 30px #082a4926;border-top:3px solid var(--blue)}.more-nav>div a{display:block;padding:9px 0;font-size:.94rem;border-bottom:1px solid var(--line)}.more-nav>div a:last-child{border:0}.menu-toggle{display:none;border:1px solid var(--blue);background:var(--blue);color:white;font-weight:700;padding:10px 16px;min-height:44px;margin-left:auto}.main-nav .mobile-contact{display:none}
.hero{position:relative;isolation:isolate;overflow:hidden;background:var(--navy);color:#fff;min-height:480px;display:flex;align-items:center}.hero>.wrap{width:100%;position:relative;z-index:1}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero.photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,21,38,.91) 0%,rgba(3,21,38,.72) 50%,rgba(3,21,38,.18) 100%);z-index:-1}.hero.solid:after{content:"";position:absolute;width:28%;top:0;right:0;height:100%;border-left:1px solid #ffffff14;background:#ffffff03;z-index:-1}.hero-copy{max-width:850px;padding:58px 0 72px}.hero .eyebrow{color:#d3e6f5}.hero .lead{max-width:690px;font-size:1.25rem;line-height:1.6;color:#f1f5fa;margin-bottom:30px}.hero-caption{position:absolute;bottom:14px;right:30px;max-width:min(560px,90%);padding:5px 10px;background:#031b2ee6;color:#fff;font-size:.78rem;line-height:1.5;margin:0;z-index:2}.home-hero{min-height:590px}.home-hero h1{font-size:clamp(3rem,5.8vw,5.8rem)}.home-hero .hero-copy{max-width:760px}.proof-strip{background:var(--blue);color:#fff}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr)}.proof-grid a{display:flex;flex-direction:column;padding:28px 28px;border-right:1px solid #ffffff38;gap:4px}.proof-grid a:first-child{padding-left:0}.proof-grid a:last-child{border:0}.proof-grid strong{font-size:2.15rem;letter-spacing:-.035em;line-height:1.2}.proof-grid span{font-size:.9rem;color:#e2ecf6}.intro-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:75px}.intro-grid>div:only-child{grid-column:1/-1;max-width:970px}.intro-grid aside{border-left:3px solid var(--blue);padding:7px 0 5px 28px;align-self:center}.intro-grid p:last-child{margin-bottom:0}.intro-grid aside p{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 40px;margin-top:34px}.service-grid article{border-top:2px solid #93aabd;padding:23px 0 10px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}.item-number{font-size:.85rem;color:var(--muted);font-weight:700;margin-bottom:18px}.service-grid p{color:var(--muted);font-size:1.04rem}.service-grid .text-link{margin-top:auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px}.section-heading h2{margin-bottom:0}.section-heading>.text-link{flex-shrink:0}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.project-grid:has(>.project-card:only-child){grid-template-columns:minmax(0,760px)}.project-card{display:flex;flex-direction:column;border:1px solid var(--line);background:white;min-width:0;scroll-margin-top:24px}.project-card figure img{width:100%;aspect-ratio:16/10;object-fit:cover}.project-card figcaption{font-size:.78rem;line-height:1.5;padding:10px 16px;background:var(--pale);color:var(--muted);min-height:58px}.project-content{display:flex;flex-direction:column;flex:1;padding:25px}.project-content>.eyebrow{font-size:.76rem;letter-spacing:.075em;margin-bottom:14px}.project-content>p:not(.eyebrow):not(.status){font-size:1rem;color:var(--muted);line-height:1.65}.project-content h3{font-size:1.4rem;line-height:1.2}.project-content>.text-link{margin-top:auto;align-self:flex-start}.status{font-size:.8rem;line-height:1.5;border-left:3px solid var(--blue);background:var(--pale);padding:6px 9px;align-self:flex-start;margin-bottom:17px;color:var(--blue);font-weight:700}.project-type{aspect-ratio:16/10;min-height:210px;background:var(--navy);color:white;padding:30px;display:flex;flex-direction:column;justify-content:space-between}.project-type>span{font-size:.76rem;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;color:#b7d2e8}.project-type>strong{font-size:1.75rem;line-height:1.1;letter-spacing:-.025em;max-width:360px}.editorial-feature{display:grid;grid-template-columns:1fr 1fr;max-width:1440px;margin:auto;background:var(--pale)}.editorial-feature>figure{display:flex;flex-direction:column;min-width:0}.editorial-feature img{width:100%;height:390px;object-fit:cover;flex:1;min-height:0}.editorial-feature figcaption{padding:12px 24px;font-size:.8rem;line-height:1.5;color:var(--muted);background:#e8eef2}.editorial-feature>div{padding:65px 58px;align-self:center}.editorial-feature>div>p:not(.eyebrow){font-size:1.15rem;color:var(--muted)}.blue-band{background:var(--blue);color:#fff;padding:52px 0}.band-inner{display:flex;gap:65px;align-items:center;justify-content:space-between}.band-inner>div{max-width:790px}.band-inner h2{font-size:2rem}.band-inner p{color:#e2ecf6;font-size:1.1rem;margin-bottom:0}.band-inner>.button{flex-shrink:0;max-width:290px}
.table-scroll{overflow-x:auto;margin-top:32px}table{border-collapse:collapse;width:100%;font-size:.96rem;background:#fff;text-align:left}caption{text-align:left;padding:0 0 15px;font-size:.88rem;color:var(--muted)}th{background:var(--navy);color:#fff;font-weight:700}td,th{padding:18px 20px;border-bottom:1px solid var(--line);vertical-align:top}th:nth-child(1){width:27%}th:nth-child(2){width:22%}tbody tr:last-child td{border-bottom:0}.project-controls{margin:32px 0 16px;padding:24px;background:var(--pale);display:flex;justify-content:space-between;gap:30px;align-items:flex-start}fieldset{padding:0;border:0;margin:0;min-width:0}legend,.sector-label{font-weight:700;font-size:.94rem}legend{padding:0 0 12px}.filter-buttons{display:flex;flex-wrap:wrap;gap:9px}.filter-buttons button{border:1px solid #8596a5;background:#fff;color:var(--blue);padding:10px 15px;font-size:.9rem;min-height:44px}.filter-buttons button[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:white}.sector-label{min-width:220px}select{display:block;width:100%;margin-top:12px;min-height:44px;padding:9px 30px 9px 12px;border:1px solid #8596a5;background:#fff;color:var(--ink);border-radius:0;font-size:.9rem}.results-count{color:var(--muted);font-size:.9rem;margin-bottom:26px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;padding-top:16px;padding-bottom:16px;font-size:.86rem;color:var(--muted)}.breadcrumbs a{color:var(--blue);text-decoration:underline}.case-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:65px}.case-layout>article{min-width:0}.case-facts{align-self:start;background:var(--pale);padding:28px;border-top:4px solid var(--blue)}.case-facts h2{font-size:1.3rem}.case-facts dt{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--muted);margin:20px 0 5px}.case-facts dd{margin:0}.case-facts ul{list-style:none;padding:0;margin:24px 0}.case-facts li{padding:10px 0;border-top:1px solid var(--line);color:var(--blue);font-weight:700}.subheading{font-size:1.6rem;margin-top:35px}.scope-list{padding-left:22px;margin-bottom:30px}.scope-list li{padding:8px 0 8px 8px;border-bottom:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:70px}.contact-big{font-size:2.2rem;font-weight:700;margin-bottom:8px}.contact-email{font-size:1.65rem;color:var(--blue);overflow-wrap:anywhere}.offices{padding-left:40px;border-left:3px solid var(--blue)}.offices article+article{margin-top:32px}.inquiry-context{background:var(--pale);padding:22px;border-left:3px solid var(--blue);margin-top:28px}.closing{padding:55px 0;background:var(--charcoal);color:white}.closing .eyebrow{color:#cfdfeb}.closing-inner{display:flex;justify-content:space-between;align-items:center;gap:35px}.closing h2{font-size:2rem}.closing p:last-child{margin-bottom:0}.closing .button{flex-shrink:0}footer{background:var(--pale);padding-top:55px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1.1fr 1.2fr;gap:36px;padding-bottom:45px}.footer-logo{width:180px;margin-bottom:25px}footer h2{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin:12px 0 20px}footer p,footer a{font-size:.9rem;line-height:1.6}.footer-grid>div>a{display:block;margin-bottom:9px;overflow-wrap:anywhere}.footer-grid>div:first-child>a{color:var(--blue);font-weight:700}.footer-grid p{color:var(--muted)}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding-top:20px;padding-bottom:24px;font-size:.8rem;color:var(--muted)}
@media(min-width:1101px){.menu-toggle{display:none}}
@media(max-width:1100px){.brand{flex-basis:190px}.brand img{width:190px}.masthead{min-height:95px}.brand-line{display:none}.utility{gap:18px}.utility>a:first-child,.utility>a:nth-child(2){display:none}.main-nav{gap:15px}.main-nav>a,.more-nav>summary{font-size:.83rem}.service-grid{gap:26px}.editorial-feature>div{padding:40px}.project-content{padding:21px}.intro-grid{gap:45px}.footer-grid{grid-template-columns:repeat(2,1fr)}.case-layout{gap:35px}.project-controls{flex-direction:column}.sector-label{width:100%;max-width:400px}}
@media(max-width:850px){.menu-toggle{display:block}.wrap{padding-left:24px;padding-right:24px}.masthead{gap:16px}.brand{flex-basis:170px}.brand img{width:170px}.utility{margin-left:auto}.utility>.button{display:none}.main-nav{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;padding-top:8px;padding-bottom:18px}.main-nav>a,.more-nav>summary{font-size:1rem;padding:12px 0}.main-nav .mobile-contact{display:block}.main-nav.enhanced{display:none}.main-nav.enhanced.is-open{display:grid}.more-nav>div{position:static;width:100%;box-shadow:none;padding:8px 0 0;border:0}.more-nav{grid-column:1/-1;order:10}.main-nav a[aria-current=page]{box-shadow:none;text-decoration:underline;text-underline-offset:6px}.hero{min-height:430px}.hero-copy{padding:48px 0 74px}.hero.photo:after{background:linear-gradient(90deg,#031526eb,#031526a6)}.home-hero{min-height:500px}.hero .lead{font-size:1.14rem}.intro-grid,.case-layout{grid-template-columns:1fr;gap:30px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.project-grid>.project-card:only-child{max-width:760px}.editorial-feature{grid-template-columns:1fr}.editorial-feature img{height:350px;flex:none}.editorial-feature>div{padding:42px 24px}.band-inner{flex-direction:column;align-items:flex-start;gap:25px}.section{padding:55px 0}.proof-grid a{padding:23px 18px}.proof-grid strong{font-size:1.8rem}.proof-grid span{font-size:.82rem}.closing-inner{display:block}.closing .button{margin-top:25px}.contact-grid{gap:38px;grid-template-columns:1fr}.case-facts{max-width:none}.offices{padding-left:25px}.section-heading{align-items:flex-start}.hero-caption{right:20px;left:20px;max-width:none;font-size:.75rem}.hero h1{overflow-wrap:break-word}.project-type{min-height:220px}}
@media(max-width:560px){.utility{display:none}.masthead{min-height:84px}.brand{flex-basis:160px}.brand img{width:160px}.hero h1{font-size:2.65rem}.home-hero h1{font-size:3.35rem}.hero .lead{font-size:1.06rem}.hero-copy{padding-top:40px}.hero{min-height:440px}.home-hero{min-height:510px}.proof-grid{grid-template-columns:1fr}.proof-grid a,.proof-grid a:first-child{padding:18px 0;border-right:0;border-bottom:1px solid #ffffff38;display:grid;grid-template-columns:130px 1fr;align-items:center;gap:16px}.proof-grid strong{font-size:1.65rem}.proof-grid span{font-size:.88rem}.service-grid,.project-grid{grid-template-columns:1fr}.service-grid{gap:20px}.section-heading{display:block}.section-heading>.text-link{margin-top:18px}.project-content{padding:24px}.project-card figure img{aspect-ratio:16/10}.project-card figcaption{min-height:0}.project-type{aspect-ratio:auto;min-height:200px}.editorial-feature img{height:270px}.section{padding:45px 0}.intro-grid aside{padding-left:22px}.body-large{font-size:1.08rem}.blue-band{padding:40px 0}.band-inner h2,.closing h2{font-size:1.8rem}.footer-grid{grid-template-columns:1fr;gap:24px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:8px}.project-controls{padding:20px}.filter-buttons button{flex-grow:1}.sector-label{min-width:0}.contact-big{font-size:1.75rem}.contact-email{font-size:1.35rem}.table-scroll table{min-width:660px}.hero-caption{bottom:10px}.button{padding:13px 19px}.main-nav{grid-template-columns:1fr}.main-nav>a{border-bottom:1px solid var(--line)}.brand-line{display:none}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@media print{.site-header,.closing,footer,.project-controls,.button-row,.hero-caption,.breadcrumbs{display:none!important}.hero{min-height:0;background:#fff;color:#000}.hero-image,.hero:after{display:none}.hero .lead,.hero .eyebrow{color:#000}.hero-copy{padding:20px 0}.section{padding:25px 0}.project-grid{grid-template-columns:repeat(2,1fr)}.project-card[hidden]{display:flex!important}.project-card{break-inside:avoid}.wrap{max-width:none}.case-layout{display:block}.table-scroll{overflow:visible}a{color:inherit}.editorial-feature{display:block}.hero h1{font-size:32pt}}

.technology-visual .editorial-feature>figure{background:#fff}.technology-visual .editorial-feature img{height:480px;max-height:560px;object-fit:contain;padding:24px;flex:none}.photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:28px}.photo-gallery figure{min-width:0;background:var(--pale)}.photo-gallery img{height:340px;width:100%;object-fit:contain;background:#fff}.photo-gallery figcaption{padding:14px 20px;font-size:.85rem;color:var(--muted);line-height:1.5}.technology-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:850px){.technology-visual .editorial-feature img{height:360px}.technology-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.photo-gallery,.technology-gallery{grid-template-columns:1fr}.photo-gallery img{height:290px}}

/* Expanded history and project search */
.history-timeline{list-style:none;padding:0;margin:44px 0 0}.history-timeline li{display:grid;grid-template-columns:170px 1fr;gap:40px;padding:32px 0;border-top:1px solid #bac9d5}.history-year{font-size:26px;font-weight:800;color:#003e7e;margin:0}.history-timeline h3{margin:0 0 14px}.history-timeline p{max-width:780px}.narrow-copy{max-width:900px}.project-controls{flex-wrap:wrap}.project-search-label{display:flex;flex-direction:column;gap:10px;font-weight:700;flex:1 1 100%}.project-search-label input{font:inherit;font-weight:400;padding:13px 16px;border:1px solid #748897;border-radius:0;max-width:640px;width:100%;background:white;color:#172d3c}.report-note{background:#eef3f6;border-left:4px solid #003e7e;padding:22px;margin-top:28px}.report-note h3{margin-top:0}.report-note p{margin-bottom:0}@media(max-width:600px){.history-timeline li{grid-template-columns:1fr;gap:12px}.history-year{font-size:23px}.project-search-label{width:100%}}

.nbs-brand{padding-top:34px}.nbs-brand img{width:220px;height:auto;display:block}.nbs-brand+.section{padding-top:35px}

.portfolio-segment{margin-top:68px;padding-top:32px;border-top:2px solid #b4c5d0}.segment-heading{max-width:850px;margin-bottom:30px}.segment-heading h2{font-size:clamp(1.6rem,3vw,2.4rem)}.segment-heading p:last-child{font-size:1.08rem;line-height:1.6}.project-controls .sector-label{flex:1 1 245px;min-width:0}.project-controls select{max-width:100%;width:100%}.project-controls fieldset{flex:1 1 100%}

.archive-jumps{display:flex;flex-wrap:wrap;gap:12px}.archive-jumps .button{border:1px solid #003e7e;background:white;color:#003e7e}.history-register{width:100%;border-collapse:collapse;margin-top:24px}.history-register caption{text-align:left;padding:0 0 18px;color:#40576a}.history-register th{text-align:left;background:#0b3658;color:white;padding:16px}.history-register td{padding:18px 16px;vertical-align:top;border-bottom:1px solid #c6d2db;line-height:1.6}.history-register td:first-child{white-space:nowrap;width:120px}.history-register td:nth-child(2){width:30%}.historical-section:nth-of-type(even){background:#f1f5f7}@media(max-width:650px){.history-register thead{display:none}.history-register,.history-register tbody,.history-register tr,.history-register td{display:block;width:100%!important}.history-register tr{border-bottom:2px solid #c6d2db;padding:15px 0}.history-register td{border:0;padding:8px 0}.history-register td::before{content:attr(data-label);display:block;font-size:12px;font-weight:800;text-transform:uppercase;color:#36566d;margin-bottom:5px}}

@media(max-width:650px){.history-register caption{display:block;width:100%;max-width:none;text-align:left;padding-bottom:12px;line-height:1.5}}

/* Homepage proof: a small, balanced selection of project-specific measures. */
.home-proof a{border-bottom:1px solid #ffffff38;padding:24px 28px;gap:7px}
.home-proof a:nth-child(3n){border-right:0}
.home-proof a:nth-child(3n+1){padding-left:0}
.home-proof a:nth-child(n+4){border-bottom:0}
.home-proof .proof-sector{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:#fff}
.home-proof .proof-action{font-size:.8rem;font-weight:700;margin-top:auto;padding-top:5px;color:#fff}
.home-proof a:hover{background:#ffffff0c}
@media(max-width:650px){.home-proof{grid-template-columns:1fr}.home-proof a,.home-proof a:nth-child(3n+1){padding:20px 0;border-right:0;border-bottom:1px solid #ffffff38}.home-proof a:last-child{border-bottom:0}}
@media(max-width:650px){.home-proof a{display:flex;flex-direction:column;align-items:flex-start}}

.four-highlights{grid-template-columns:repeat(4,minmax(0,1fr))}.four-highlights a,.four-highlights a:nth-child(3n+1){padding:24px 22px;border-bottom:0;border-right:1px solid #ffffff38}.four-highlights a:first-child{padding-left:0}.four-highlights a:last-child{border-right:0}@media(max-width:1000px){.four-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.four-highlights a:nth-child(2n){border-right:0}.four-highlights a:nth-child(-n+2){border-bottom:1px solid #ffffff38}}@media(max-width:650px){.four-highlights{grid-template-columns:1fr}.four-highlights a,.four-highlights a:nth-child(3n+1){padding:20px 0;border-right:0;border-bottom:1px solid #ffffff38}.four-highlights a:last-child{border-bottom:0}}
