:root{--ng-green:#073f32;--ng-lime:#c9e33a;--ng-cream:#f6f0dd;--ng-orange:#ef6c35;--ng-black:#10211c;--ng-line:rgba(16,33,28,.2)}
.ng-switchboard{background:var(--ng-cream);color:var(--ng-black)}.ng-top{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;padding:1rem clamp(1rem,4vw,3rem);background:var(--ng-black);color:#fff}.ng-logo{display:flex;align-items:center;gap:.8rem;color:#fff;text-decoration:none}.ng-logo span{display:grid;place-items:center;width:2.6rem;height:2.6rem;background:var(--ng-lime);color:var(--ng-black);font-weight:950}.ng-top nav{display:flex;justify-content:center;gap:1rem}.ng-top nav a{color:#fff;text-decoration:none;font-size:.9rem}.ng-open{padding:.75rem 1rem;background:var(--ng-orange);color:#fff;font-weight:900;text-decoration:none}
.ng-main{max-width:1320px;margin:auto}.ng-hero{display:grid;grid-template-columns:.32fr 1.3fr .7fr;min-height:680px;background:var(--ng-green);color:#fff}.ng-status,.ng-headline,.ng-intro{padding:clamp(1.5rem,4vw,4rem)}.ng-status{display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid rgba(255,255,255,.25);font-family:monospace}.ng-status span{writing-mode:vertical-rl;letter-spacing:.15em}.ng-status i{color:var(--ng-lime)}.ng-headline{align-self:center}.ng-headline>p,.ng-code{font-family:monospace;font-size:.8rem;font-weight:800;letter-spacing:.1em}.ng-headline h1{margin:1rem 0;font-size:clamp(3.2rem,7.4vw,7.4rem);line-height:.9;letter-spacing:-.055em}.ng-intro{align-self:end;background:var(--ng-lime);color:var(--ng-black);font-size:1.08rem;line-height:1.65}.ng-intro a{color:inherit;font-weight:950}
.ng-board{display:grid;grid-template-columns:repeat(2,1fr);border-left:1px solid var(--ng-line);border-top:1px solid var(--ng-line)}.ng-board article{min-height:320px;padding:clamp(2rem,5vw,4.5rem);border-right:1px solid var(--ng-line);border-bottom:1px solid var(--ng-line)}.ng-board article:nth-child(2),.ng-board article:nth-child(3){background:#fff}.ng-board h2,.ng-lanes h2,.ng-proof h2,.ng-boundary h2,.ng-close h2{font-size:clamp(2rem,4vw,4.2rem);line-height:1;letter-spacing:-.04em}.ng-board p{max-width:60ch;line-height:1.65}.ng-board a{color:var(--ng-green);font-weight:900}.ng-code{color:var(--ng-orange)}
.ng-lanes{display:grid;grid-template-columns:.85fr 1.15fr;gap:4rem;padding:clamp(3rem,7vw,7rem);background:var(--ng-orange);color:#fff}.ng-lanes-copy p{max-width:55ch;line-height:1.7}.ng-lanes .ng-code{color:var(--ng-black)}.ng-lanes ol{margin:0;padding:0;list-style:none}.ng-lanes li{display:grid;grid-template-columns:.45fr 1fr;gap:1rem;padding:1.35rem 0;border-top:1px solid rgba(255,255,255,.45)}.ng-lanes li span{line-height:1.5}.ng-proof{display:grid;grid-template-columns:1fr 1fr;gap:4rem;padding:clamp(3rem,7vw,7rem);background:#fff}.ng-proof ul{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:0;padding:1px;background:var(--ng-line);list-style:none}.ng-proof li{display:grid;place-items:center;min-height:110px;padding:1rem;background:#fff;text-align:center;font-weight:800}.ng-boundary{padding:clamp(3rem,7vw,7rem);background:var(--ng-black);color:#fff}.ng-boundary p:last-child{max-width:78ch;font-size:1.1rem;line-height:1.7}.ng-close{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2rem;padding:clamp(3rem,7vw,7rem);background:var(--ng-lime)}.ng-close h2{max-width:18ch}.ng-close>a{padding:1rem 1.25rem;background:var(--ng-green);color:#fff;font-weight:900;text-decoration:none}.ng-close small{grid-column:1/-1}.ng-switchboard footer{background:var(--ng-green);color:#fff}
@media(max-width:900px){.ng-top{grid-template-columns:1fr auto}.ng-top nav{display:none}.ng-hero,.ng-lanes,.ng-proof,.ng-close{grid-template-columns:1fr}.ng-hero{min-height:0}.ng-status{min-height:90px;flex-direction:row}.ng-status span{writing-mode:initial}.ng-board{grid-template-columns:1fr}.ng-close small{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.ng-switchboard *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
