/* Shared need-based architecture. Existing brand, routes and local data are retained. */
.nb-need-hero.nb-home-hero-v2 {display:block;min-height:0;padding:clamp(1.25rem,4vw,3rem);}
.nb-need-hero .nb-home-hero-copy-v2 {max-width:52rem;margin:auto;}
.nb-need-hero .nb-home-hero-copy-v2 {display:block;}
.nb-need-hero #nb-home-title {font-size:clamp(1.8rem,4vw,3rem);line-height:1.15;margin:0 0 1.25rem;}
.nb-titor-secondary {display:inline-block;margin-top:1rem;min-height:44px;padding:.6rem 0;}
.nb-area-highlights,.nb-area-grid,.nb-area-explore {display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));}
.nb-area-highlights {grid-template-columns:repeat(4,minmax(0,1fr));}
.nb-area-project {position:relative;min-width:0;padding:1.25rem;border:1px solid #6584a255;border-radius:1rem;background:var(--surface,transparent);}
.nb-area-project img {width:64px;height:64px;object-fit:contain;display:block;margin-bottom:.75rem;}
.nb-area-project h3 {font-size:1.2rem;line-height:1.35;margin:.6rem 0;overflow-wrap:normal;}
.nb-area-project h3 a {display:inline-block;padding:.25rem 0;min-height:44px;}
.nb-area-project p {font-size:1rem;line-height:1.55;margin:.4rem 0 0;}
.nb-area-status {display:inline-block;font-size:.875rem;padding:.25rem .6rem;border:1px solid #6584a255;border-radius:2rem;}
.nb-area-explore details {min-width:0;border-top:1px solid #6584a266;padding:1rem;}
.nb-area-explore summary {cursor:pointer;min-height:64px;list-style:none;display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.5rem;}
.nb-area-explore summary strong {font-size:1.1rem;}
.nb-area-explore summary>span:last-child {grid-column:2;font-size:1rem;line-height:1.5;}
.nb-area-explore summary::after {content:'+';grid-column:1;grid-row:2;font-size:1.25rem;}
.nb-area-explore details[open] summary::after {content:'−';}
.nb-area-explore ul {padding-left:1.5rem;}
.nb-area-explore li {margin:.5rem 0;}
.nb-area-explore li a,.nb-area-more {display:inline-block;min-height:44px;padding:.6rem .2rem;}
.nb-area-explore li small {display:block;font-size:.875rem;}
.nb-area-filters {display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0;}
.nb-area-filters a {display:flex;align-items:center;min-height:44px;padding:.6rem 1rem;border:1px solid #6584a266;border-radius:2rem;white-space:normal;text-decoration:none;}
.nb-area-filters a[aria-current] {background:#155ac1;color:#fff;}
.nb-area-section {margin:2rem 0 3rem;scroll-margin-top:6rem;}
.nb-area-section[hidden] {display:none!important;}
.nb-area-section h2 {font-size:clamp(1.35rem,3vw,1.8rem);line-height:1.3;}
.nb-area-products {display:grid;gap:.6rem;margin:1rem 0;}
.nb-area-products a {display:grid;gap:.4rem;padding:1rem;border-left:3px solid #538dcc;min-width:0;line-height:1.5;text-decoration:none;}
.nb-area-products a span {font-size:1rem;}
.nb-area-products a small {font-size:.875rem;}
.nb-academy-areas .nb-area-products {grid-template-columns:repeat(2,minmax(0,1fr));}
.nb-area-breadcrumb {margin:1rem 0;font-size:.875rem;}
.nb-area-breadcrumb ol {display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;padding:0;margin:0;}
.nb-area-breadcrumb li {display:flex;align-items:center;gap:.4rem;min-width:0;}
.nb-area-breadcrumb li:not(:last-child)::after {content:'›';}
.nb-area-breadcrumb a {display:inline-block;padding:.6rem .15rem;}
.nb-area-breadcrumb span {padding:.6rem .15rem;}
.nb-area-project a:focus-visible,.nb-area-explore summary:focus-visible,.nb-area-filters a:focus-visible,.nb-area-products a:focus-visible {outline:3px solid #559cff;outline-offset:4px;}
@media(max-width:850px) {.nb-area-highlights {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:540px) {.nb-area-highlights,.nb-area-grid,.nb-area-explore,.nb-academy-areas .nb-area-products {grid-template-columns:minmax(0,1fr);}.nb-area-project {padding:1rem;}.nb-area-project img {width:48px;height:48px;}.nb-need-hero #nbHomeSearch {width:100%;}.nb-area-filters a {font-size:.875rem;}}
@media(max-width:540px) {
 .nb-area-highlights .nb-area-project {display:grid;grid-template-columns:72px minmax(0,1fr);gap:.4rem .75rem;align-items:start;}
 .nb-area-highlights .nb-area-project img {grid-column:1;grid-row:1/4;width:72px;height:64px;margin:0;}
 .nb-area-highlights .nb-area-project h3,.nb-area-highlights .nb-area-project p,.nb-area-highlights .nb-area-status {grid-column:2;margin:0;}
 .nb-area-highlights .nb-area-status {justify-self:start;}
 .nb-area-highlights .nb-area-project h3 a {padding:.15rem 0;min-height:44px;}
 .nb-area-highlights .nb-area-project p {font-size:.9375rem;}
}
