@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@1,500&display=swap');:root{--green:#0c3027;--dark:#0b1715;--copper:#b36a34;--cream:#f8f6f1;--ink:#202827;--muted:#6b7470}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:white;color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:min(1200px,calc(100% - 64px));margin:auto}.sitehead{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.98);border-bottom:1px solid #e7e8e3}.nav{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{width:278px;flex-shrink:0}.brand img{width:100%}nav{display:flex;flex-wrap:nowrap;gap:18px;align-items:center;font-family:Aptos,"Segoe UI",Arial,sans-serif;font-size:14px;font-weight:500;letter-spacing:0}nav a{white-space:nowrap;flex-shrink:0;line-height:1.25}nav a:hover,.under:hover{color:var(--copper)}nav .navcta{background:var(--green);padding:15px 20px;color:white;border-radius:2px}.menu{display:none;background:none;border:0;font-size:25px}.hero{min-height:680px;position:relative;background:#10201b;color:#fff;display:flex;align-items:center}.heroimg{position:absolute;inset:0;width:100%;height:100%}.heroimg{object-fit:cover;object-position:center 42%}.herotext{position:relative;z-index:1;padding:95px 0}.eyebrow{font-size:11px;font-weight:800;color:var(--copper);letter-spacing:.21em;display:block;margin-bottom:23px}.eyebrow.light{color:#efb684}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif}h1{font-weight:800;letter-spacing:-.055em;font-size:clamp(46px,5.35vw,78px);line-height:1.09;max-width:860px;margin-bottom:28px}em,.serif{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.035em}h1 em{color:#f2b989}p{line-height:1.8}.herotext p{font-size:17px;max-width:575px;color:#e6e9e5}.actions{display:flex;gap:35px;align-items:center;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;font-size:13px;font-weight:800}.button.copper{background:var(--copper);color:white}.button:hover{filter:brightness(1.12)}.textlink{color:white;font-size:13px;font-weight:700}.photocredit{position:absolute;right:35px;bottom:22px;letter-spacing:.14em;font-size:9px;color:#d3ded6}.intro{padding:106px 0 115px}.split{display:grid;grid-template-columns:1fr 1fr;gap:100px}.intro h2,.sectiontop h2,.project h2,.voting h2,.bottomcta h2{font-size:clamp(37px,4vw,58px);line-height:1.15;letter-spacing:-.05em;margin:0;font-weight:800}.introcopy{padding-top:20px}.lead{font-weight:600;font-size:20px;line-height:1.6}.introcopy p:not(.lead){color:var(--muted)}.under{border-bottom:1px solid var(--copper);padding-bottom:8px;color:var(--green);font-weight:700;font-size:13px}.statement{background:var(--green);color:#e4eee8}.statrow{display:flex;justify-content:space-around;gap:16px;align-items:center;min-height:92px;font-size:11px;font-weight:800;letter-spacing:.1em;text-align:center}.statrow i{height:27px;width:1px;background:#7d938b}.expertise{background:var(--cream);padding:105px 0}.sectiontop{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:44px}.sectiontop>p{max-width:330px;color:var(--muted);margin-bottom:0}.capgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.capgrid article{background:white;padding:38px 25px;min-height:285px;border-top:3px solid var(--copper)}.number{font-weight:700;color:var(--copper);font-size:12px}.capgrid h3{font-size:21px;letter-spacing:-.04em;margin:40px 0 12px}.capgrid p{font-size:14px;color:var(--muted);line-height:1.7}.events{padding:110px 0;background:var(--dark);color:white}.inverse p{color:#bacac3}.eventgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.eventcard{background:#fff;color:var(--ink);overflow:hidden}.eventart{height:360px;background:#f3f1ec;display:flex;align-items:center;justify-content:center;padding:22px}.eventart img{width:100%;height:100%;object-fit:contain}.eventart.darkart{background:#0c100f}.eventdetail{padding:29px 34px 35px}.eventdetail small{color:#9b5c31;font-weight:800;letter-spacing:.12em;font-size:10px}.eventdetail h3{font-size:27px;letter-spacing:-.05em;margin:12px 0}.eventdetail p{font-size:14px;color:var(--muted)}.eventdetail a{color:var(--green);font-weight:800;font-size:13px}.project{padding:105px 0}.projectgrid{display:grid;grid-template-columns:1.12fr .88fr;gap:80px;align-items:center}.projectphoto img{width:100%;height:490px;object-fit:cover}.projectcopy p:not(.lead){color:var(--muted)}.projectcopy h2{margin-bottom:25px}.outline{border:1px solid var(--green);color:var(--green);margin-top:20px}.voting{background:#103629;color:white;padding:85px 0}.votinggrid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:75px}.voting h2{margin-bottom:24px}.voting p{color:#d3dfd5}.voteart{max-width:340px;justify-self:center}.note{font-size:12px;margin:14px 0 0;color:#adc1b4!important}.bottomcta{background:var(--cream);text-align:center;padding:110px 0}.bottomcta p{max-width:620px;margin:30px auto 0;color:var(--muted)}.bottomcta .contactnote{font-size:13px;color:#966a4b;margin-top:18px}footer{background:white;padding:35px 0}.foot{display:flex;align-items:center;gap:32px}.foot img{width:190px}.foot div{display:flex;flex:1;flex-direction:column;gap:5px;font-size:11px;font-weight:700}.foot small{font-size:9px;letter-spacing:.15em;color:var(--muted)}.foot a{font-size:12px;font-weight:700}section{scroll-margin-top:88px}@media(max-width:960px){.wrap{width:min(100% - 36px,1200px)}.nav{min-height:76px}.brand{width:220px}.menu{display:block}nav{display:none;position:absolute;top:75px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:22px;gap:20px;box-shadow:0 13px 24px #0002}nav.open{display:flex}.hero{min-height:620px}.split,.projectgrid,.votinggrid{grid-template-columns:1fr;gap:40px}.intro,.expertise,.events,.project,.bottomcta{padding:75px 0}.capgrid{grid-template-columns:repeat(2,1fr)}.projectphoto img{height:390px}.eventart{height:280px}}@media(max-width:600px){.hero{min-height:580px}.heroimg{object-position:61% center}.herotext{padding:85px 0}.herotext p{font-size:15px}.actions{flex-direction:column;align-items:flex-start;gap:22px}.statrow{flex-direction:column;padding:25px 0}.statrow i{display:none}.sectiontop{display:block}.sectiontop>p{margin-top:20px}.capgrid,.eventgrid{grid-template-columns:1fr}.capgrid article{min-height:245px}.eventart{height:260px}.projectgrid{gap:30px}.projectphoto img{height:260px}.votinggrid{gap:35px}.foot{flex-wrap:wrap}}

/* Original hero photograph must remain fully unfiltered everywhere. */
.heroimg{filter:none!important;opacity:1!important;mix-blend-mode:normal!important}
.hero::before,.hero::after,.heroshade{display:none!important;content:none!important;background:none!important;opacity:0!important}

/* Desktop navigation: Aptos first, clean single-line labels at all sizes. */
.sitehead nav a{font-family:Aptos,"Segoe UI",Arial,sans-serif;white-space:nowrap}
.sitehead nav .navcta{font-weight:600}

/* NES navigation contrast and visibility update */
.sitehead nav a,.sitehead nav a:link,.sitehead nav a:visited,.sitehead nav a:hover,.sitehead nav a:focus{color:#0c3027!important;font-family:Aptos,"Segoe UI",Arial,sans-serif;white-space:nowrap;text-decoration:none;}
.sitehead nav .navcta,.sitehead nav .navcta:link,.sitehead nav .navcta:visited,.sitehead nav .navcta:hover{color:#0c3027!important;background:#fff!important;border:1px solid #0c3027;font-weight:600;}
.sitehead .menu{color:#0c3027;}

/* Desktop navigation that stays visible at reduced browser viewport widths. */
@media (min-width: 681px) {
  .sitehead .nav { display: flex; flex-wrap: nowrap; align-items: center; gap: 16px; }
  .sitehead .brand { width: clamp(180px, 21vw, 275px); flex: 0 1 275px; min-width: 180px; }
  .sitehead .menu { display: none !important; }
  .sitehead #nav { display: flex !important; position: static !important; flex-direction: row !important; flex: 1 1 auto; justify-content: flex-end; align-items: center; gap: clamp(8px, 1.15vw, 19px); box-shadow: none !important; padding: 0 !important; background: transparent !important; min-width: 0; }
  .sitehead #nav a { display: inline-block; font-family: Aptos, "Segoe UI", Arial, sans-serif; font-size: clamp(11px, 1.05vw, 14px); font-weight: 500; color: #0c3027 !important; white-space: nowrap !important; flex-shrink: 0; line-height: 1.25; }
  .sitehead #nav .navcta { background: #fff !important; border: 1px solid #0c3027; color: #0c3027 !important; padding: 12px 14px; font-size: clamp(11px, 1.05vw, 14px); font-weight: 600; }
}
@media (min-width: 681px) and (max-width: 900px) {
  .sitehead .nav { flex-wrap: wrap; padding-top: 14px; padding-bottom: 14px; row-gap: 11px; }
  .sitehead .brand { width: 225px; flex: 0 0 225px; }
  .sitehead #nav { flex: 0 0 100%; justify-content: space-between; gap: 8px; }
  .sitehead #nav a { font-size: 12px; }
  .sitehead #nav .navcta { padding: 8px 10px; font-size: 12px; }
}
@media (max-width: 680px) {
  .sitehead .menu { display: block; }
  .sitehead #nav { display: none; }
  .sitehead #nav.open { display: flex; }
}

/* NES additional services section */
.consultancy{padding:102px 0 110px;background:#fff;border-top:1px solid #e5e9e3}
.consultancygrid{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:start}
.consultancy h2{margin:0;color:var(--green);font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:clamp(36px,4vw,58px);line-height:1.15;letter-spacing:-.05em}
.consultancy .copper-rule{background:var(--copper);width:92px;height:3px;margin-top:27px}
.consultancycopy{padding-top:23px}
.consultancycopy p{font-size:18px;line-height:1.85;color:#4b5c54;margin-bottom:30px}
.consultancycopy .under{display:inline-block}
@media(max-width:900px){.consultancy{padding:72px 0 82px}.consultancygrid{grid-template-columns:1fr;gap:18px}.consultancycopy{padding-top:10px}}
@media(max-width:600px){.consultancycopy p{font-size:16px;line-height:1.8}}
/* NES brand/story and events expansion, October 2026 */
.newwho{display:grid;grid-template-columns:.82fr 1.18fr;gap:66px;align-items:center}.who-photo img{display:block;width:100%;height:510px;object-fit:cover;object-position:center 55%}.who-content h2{font-size:clamp(36px,3.6vw,54px);line-height:1.15;letter-spacing:-.04em;color:var(--green)}.who-content p{color:#43544b;line-height:1.8}.who-content .lead{color:var(--ink)}.brandintro{display:flex;align-items:center;gap:26px;margin-bottom:22px}.brandintro img{width:115px;height:115px;object-fit:contain;background:#122c24;border-radius:6px;padding:8px}.brandintro .eyebrow{margin:0}.consultancybrand{display:block;max-width:160px;max-height:160px;object-fit:contain;margin-top:34px;background:#102a20;border-radius:8px;padding:10px}.recapphoto{width:100%;height:170px;object-fit:cover;margin-top:20px}.eventgallery{margin-top:62px;border-top:1px solid #526057;padding-top:37px}.eventgallery h3{font-size:28px;margin-bottom:8px}.eventgallery>p{color:#c9d3cb}.gallerythree{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.gallerythree figure{margin:0;background:white;color:#254133}.gallerythree img{width:100%;height:245px;object-fit:cover}.gallerythree figcaption{padding:12px 15px;font-size:13px;font-weight:700}.northwest-gallery{padding:25px 0 72px;background:white}.regiongrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.regiongrid img{width:100%;height:225px;object-fit:cover}.nesfooter{background:#0b241c;color:#edf2ed;padding:52px 0}.foot-new{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:45px}.nesfooter .footer-logo{width:180px;height:180px;object-fit:contain;background:#0b241c}.footer-content>strong{font-size:18px}.footer-content p{color:#d3ded5;font-size:14px;max-width:700px}.footer-nav{display:flex;gap:11px 22px;flex-wrap:wrap}.footer-nav a{font:600 13px Aptos,"Segoe UI",Arial,sans-serif;color:#e5efe8}.footer-nav a:hover{color:#e5ad7f}.consultancy h2{text-transform:uppercase;font-size:clamp(31px,3.3vw,48px)}@media(max-width:900px){.newwho{grid-template-columns:1fr;gap:22px}.who-photo img{height:380px}.gallerythree{grid-template-columns:1fr}.gallerythree img{height:280px}.regiongrid img{height:170px}.foot-new{grid-template-columns:1fr}.footer-logo{max-width:180px}}@media(max-width:600px){.brandintro img{width:88px;height:88px}.regiongrid{grid-template-columns:1fr}.regiongrid img{height:200px}.who-photo img{height:300px}}

/* Homepage square corporate logo in upper-left; horizontal logo retained on other pages. */
.sitehead .nav .brand{width:128px!important;min-width:0!important;flex:0 0 128px!important;display:flex;align-items:center;}
.sitehead .nav .brand img{display:block;width:128px;max-width:100%;height:auto;object-fit:contain;}
.sitehead .nav{min-height:140px;}
@media(max-width:900px){
  .sitehead .nav .brand{width:108px!important;flex:0 0 108px!important;}
  .sitehead .nav .brand img{width:108px;}
  .sitehead .nav{min-height:116px;}
}
@media(max-width:680px){
  .sitehead .nav .brand{width:92px!important;flex:0 0 92px!important;}
  .sitehead .nav .brand img{width:92px;}
  .sitehead .nav{min-height:100px;}
}

/* Smaller Northwest photo gallery positioned after Who We Are */
.northwest-gallery{padding:24px 0 52px;background:#fff;}
.northwest-gallery .wrap{width:min(620px,calc(100% - 36px));margin:auto;}
.northwest-gallery .eyebrow{font-size:10px;}
.northwest-gallery .regiongrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.northwest-gallery .regiongrid img{width:100%;height:112px;object-fit:cover;}
@media(max-width:600px){.northwest-gallery .wrap{width:calc(100% - 28px)}.northwest-gallery .regiongrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.northwest-gallery .regiongrid img{height:75px;}}
