/* Approved problem-first service menu; all rules scoped to the navigation. */
header #services-menu.needs-menu{position:fixed;top:90px;left:50%;right:auto;transform:translateX(-50%);width:min(1320px,calc(100vw - 64px));max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain;display:block;padding:0;gap:0;background:#fff;color:#10243a;border:1px solid #e3e8ed;box-shadow:0 18px 44px #06172c30;text-transform:none;letter-spacing:normal;border-radius:0 0 4px 4px}
header #services-menu[hidden]{display:none!important}
header #services-menu .nm-grid{display:grid;grid-template-columns:1.2fr 1fr;padding:28px 34px 20px;gap:32px}
header #services-menu .nm-label{margin:0 0 15px;font-size:12px;line-height:1.5;font-weight:500;text-transform:uppercase;letter-spacing:.09em;color:#607189}
header #services-menu .nm-areas{border-left:1px solid #e0e6ec;padding-left:32px}
header #services-menu a{color:inherit;text-decoration:none;margin:0;border-radius:0;white-space:normal}
header #services-menu .nm-icon{display:block;flex-shrink:0;width:25px;height:25px;stroke-width:1.6}
header #services-menu .nm-need{display:grid;grid-template-columns:29px 1fr 20px;gap:19px;align-items:center;padding:21px 14px;border-bottom:1px solid #e2e8ee;font-size:18px;line-height:1.4;min-height:70px;font-weight:500}
header #services-menu .nm-need:last-child{border-bottom:0}
header #services-menu .nm-need>.nm-icon:last-child,header #services-menu .nm-area>.nm-icon:last-child{width:20px;height:20px}
header #services-menu .nm-area{display:grid;grid-template-columns:29px 1fr 20px;gap:16px;padding:16px 4px;border-bottom:1px solid #e2e8ee;align-items:center}
header #services-menu .nm-area strong{display:block;font-weight:500;font-size:18px;line-height:1.4}
header #services-menu .nm-area small{display:block;font-size:14px;line-height:1.5;color:#65778c;margin-top:4px}
header #services-menu .nm-area:nth-last-child(2){border-bottom:0}
header #services-menu .nm-all{display:inline-flex;align-items:center;gap:16px;color:#285ddc;font-size:16px;line-height:1.5;padding:13px 4px 0}
header #services-menu .nm-taskforce{display:flex;align-items:center;gap:22px;background:#081e2e;color:#fff;padding:23px 34px}
header #services-menu .nm-taskforce>.nm-icon{width:33px;height:33px;color:#bed7ef}
header #services-menu .nm-taskforce strong{font-size:18px;line-height:1.4;font-weight:500}
header #services-menu .nm-taskforce p{font-size:15px;line-height:1.5;color:#aac8e5;margin:5px 0 0}
header #services-menu .nm-taskforce a{margin-left:auto;display:inline-flex;align-items:center;gap:15px;white-space:nowrap;border:1px solid #a8bdd1;padding:12px 18px;font-size:16px;line-height:1.5}
header #services-menu .nm-programs{display:flex;flex-wrap:wrap;align-items:center;gap:30px;padding:18px 34px}
header #services-menu .nm-programs>span{font-size:14px;color:#65778c;border-right:1px solid #dfe6ed;padding-right:30px}
header #services-menu .nm-programs a{display:inline-flex;gap:12px;align-items:center;font-size:16px;padding:6px 0}
header #services-menu a:focus-visible{outline:2px solid #285ddc;outline-offset:2px}
@media(hover:hover){header #services-menu .nm-need:hover,header #services-menu .nm-area:hover{background:#edf4ff;color:#285ddc}header #services-menu .nm-programs a:hover,header #services-menu .nm-all:hover{color:#285ddc;text-decoration:underline}header #services-menu .nm-taskforce a:hover{background:#21435e}}
@media(max-width:1100px){header #navigation.open{max-height:calc(100dvh - 74px);overflow-y:auto;overscroll-behavior:contain}header #services-menu.needs-menu{position:static;transform:none;width:100%;max-height:none;overflow:visible;border:0;box-shadow:none;margin:0;padding:0}header #services-menu .nm-grid{grid-template-columns:1fr;padding:20px 0;gap:30px}header #services-menu .nm-areas{padding:0;border:0}header #services-menu .nm-need{font-size:17px;padding:16px 8px;gap:14px;min-height:66px}header #services-menu .nm-area{padding:15px 8px;gap:14px}header #services-menu .nm-taskforce{padding:22px 16px;gap:14px;flex-wrap:wrap}header #services-menu .nm-taskforce>div{flex:1;min-width:180px}header #services-menu .nm-taskforce a{margin-left:47px}header #services-menu .nm-programs{padding:20px 8px;gap:15px 24px}header #services-menu .nm-programs>span{flex-basis:100%;border:0;padding:0}header #services-menu .nm-area small{font-size:14px}header #services-menu .nm-label{font-size:12px;padding:0 8px}header #services-menu .nm-all{padding:16px 8px}}
