.npd-site{margin:0;background:#f5f7fa;color:#080d0c;font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.65}
.npd-shell,.npd-shell *,.npd-form,.npd-form *{box-sizing:border-box}
.npd-shell{--ink:#080d0c;--blue:#16820c;--muted:#4b5e70;max-width:1600px;margin:auto;background:#fff}
.npd-shell a{color:inherit}.npd-shell p{margin:0 0 1.2rem}.npd-shell h1,.npd-shell h2,.npd-shell h3{font-family:Arial,Helvetica,sans-serif;font-weight:700;color:inherit;margin:0 0 1.5rem;line-height:1.08;letter-spacing:-.045em;text-wrap:balance}
.npd-shell h1{font-size:clamp(2.9rem,7.2vw,7.2rem)}.npd-shell h2{font-size:clamp(2rem,3.5vw,3.2rem)}.npd-shell h3{font-size:1.8rem}
.npd-header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.5rem 5%;border-bottom:1px solid #dde4ec}
.npd-brand{display:flex;gap:.85rem;align-items:center;text-decoration:none;font-size:1.3rem;font-weight:700;line-height:1.1;white-space:nowrap}
.npd-brand small{display:block;font-size:.72rem;letter-spacing:.25em;margin-top:.45rem}.npd-mark{display:flex;align-items:center;background:#16820c;color:#fff;padding:.6rem;font-size:1.7rem;letter-spacing:-.15em}.npd-mark span{font-size:1.2rem;margin-left:.25rem}
.npd-nav{display:flex;gap:2rem;align-items:center;font-size:1rem}.npd-nav a{text-decoration:none;padding:.7rem 0;border-bottom:2px solid transparent}.npd-nav a[aria-current],.npd-nav a:hover{border-color:#16820c;color:#16820c}
.npd-hero{padding:5rem 6% 3rem!important;background:#080d0c;color:#fff;border-bottom:8px solid #16820c;margin:0!important}.npd-hero h1{max-width:1100px}.npd-hero .npd-lead{color:#d2ddeb}.npd-hero .npd-eyebrow{color:#77d568}.npd-hero-foot{padding-top:2rem;margin-top:3rem!important;border-top:1px solid #496078;color:#bdcbdc;font-size:.95rem}
.npd-eyebrow{font-size:.8rem;font-weight:700;letter-spacing:.16em;line-height:1.5;margin-bottom:1.7rem!important;color:#16820c}.npd-lead{font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.6;max-width:700px;color:#4b5e70}.npd-section{padding:4.5rem 6%;margin:0!important}
.npd-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:3rem!important}.npd-card{border-top:2px solid #16820c;padding-top:1.5rem;margin:0!important}.npd-number{font-size:.8rem;letter-spacing:.1em;font-weight:700;color:#4b5e70;margin-bottom:2rem!important}.npd-card p:last-child{color:#4b5e70;max-width:490px}
.npd-page-intro{padding:4.5rem 6%;background:#f4f7f3;border-bottom:1px solid #dbe5d8;margin:0!important}.npd-page-intro h1{font-size:clamp(3rem,6.8vw,6.5rem)}.npd-story{display:grid;grid-template-columns:1fr 1fr;gap:4rem;padding:5rem 6%;margin:0!important}.npd-story p{color:#4b5e70}.npd-region{border-left:3px solid #16820c;padding:.6rem 1rem;color:#080d0c!important;font-weight:700}
.npd-cta{background:#f4f7f3;display:flex;justify-content:space-between;align-items:center;gap:2rem;margin:0 6% 4rem;padding:3rem}.npd-cta h2{font-size:2.2rem}.npd-cta .npd-eyebrow{margin-bottom:1rem!important}.npd-cta p:last-child{margin:0;color:#4b5e70}
.npd-button,.npd-shell .npd-button{display:inline-flex;justify-content:space-between;align-items:center;gap:2rem;background:#16820c;border:2px solid #16820c;border-radius:0;color:#fff;text-decoration:none;padding:.9rem 1.4rem;font:700 1rem/1.5 Arial,Helvetica,sans-serif;white-space:nowrap;cursor:pointer}.npd-button:hover{background:#106209;border-color:#106209}.npd-button:disabled{opacity:.65;cursor:wait}
.npd-contact-layout{display:grid;grid-template-columns:1fr 1.8fr;gap:4rem;padding:4.5rem 6%;margin:0!important}.npd-contact-aside h2{font-size:2rem}.npd-contact-aside p{color:#4b5e70}.npd-contact-aside .npd-eyebrow{margin-top:3rem!important;margin-bottom:.5rem!important}
.npd-form{font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.6;color:#080d0c;min-width:0;margin:0!important}.npd-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.npd-form label{display:block;font-weight:700;margin-bottom:.5rem}.npd-form label span{font-weight:400;font-size:.85rem;color:#4b5e70}.npd-form input:not([type=hidden]),.npd-form textarea{display:block;width:100%;max-width:100%;border:1px solid #90a2b5;background:#fff;color:#080d0c;border-radius:0;padding:.85rem;font:inherit;line-height:1.5;box-shadow:none}.npd-form textarea{resize:vertical;min-height:150px}.npd-form-grid{margin-bottom:1.5rem}.npd-form-note{font-size:.875rem;color:#4b5e70;margin:1rem 0!important}.npd-form-status{margin-top:1rem!important;overflow-wrap:anywhere}.npd-form-status[data-error=true]{color:#a32424}.npd-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.npd-form ::placeholder{color:#637386;opacity:1}
.npd-footer{padding:2rem 6%;border-top:1px solid #dde4ec;display:flex;justify-content:space-between;gap:1rem;font-size:.85rem;color:#4b5e70}.npd-shell :focus-visible,.npd-form :focus-visible{outline:3px solid #f49c28;outline-offset:4px}.npd-skip{position:absolute;left:-9999px}.npd-skip:focus{position:fixed;left:1rem;top:1rem;background:#fff;color:#080d0c;padding:1rem;z-index:100000}
@media(max-width:760px){.npd-header{flex-wrap:wrap;gap:1rem;padding:1.3rem 6%}.npd-nav{gap:1.6rem}.npd-hero,.npd-page-intro{padding:3rem 6%!important}.npd-hero h1{font-size:clamp(2rem,6.5vw,3.4rem)}.npd-hero-foot{margin-top:2rem!important}.npd-section,.npd-story,.npd-contact-layout{padding:3rem 6%}.npd-grid,.npd-story,.npd-contact-layout{grid-template-columns:1fr;gap:2rem}.npd-cta{padding:2rem;display:block;margin-bottom:3rem}.npd-cta .npd-button{margin-top:1.5rem}.npd-footer{flex-direction:column}.npd-contact-aside .npd-eyebrow{margin-top:1.5rem!important}}
@media(max-width:420px){.npd-form-grid{grid-template-columns:1fr}.npd-brand{font-size:1.1rem}.npd-nav{width:100%;justify-content:space-between}.npd-cta{padding:1.5rem}.npd-page-intro h1{font-size:2.8rem}}

/* Visual direction adapted from the supplied NorthPoint mockup. */
.npd-hero,.npd-page-intro{background:linear-gradient(90deg,rgba(0,6,5,.96) 0%,rgba(0,6,5,.77) 43%,rgba(0,6,5,.08) 80%),var(--npd-hero-image) center 48%/cover;color:#fff;border:0;min-height:440px}
.npd-hero{padding:4.7rem 6%!important}.npd-hero h1{font-size:clamp(2.6rem,4.9vw,4.5rem);max-width:640px;line-height:1.06;letter-spacing:-.035em;text-transform:uppercase}.npd-hero h1 strong{color:#39a92a;font-weight:700}.npd-hero .npd-lead,.npd-page-intro .npd-lead{color:#f2f4f1;font-size:1.1rem;max-width:530px;line-height:1.75}.npd-page-intro h1{text-transform:uppercase;font-size:clamp(2.7rem,5vw,4.8rem)}.npd-page-intro .npd-eyebrow{color:#a0e596}.npd-hero-foot{display:none}
.npd-brand{letter-spacing:.08em;text-transform:uppercase;font-size:1.15rem}.npd-brand b{color:#16820c;font-weight:700}.npd-brand small{font-size:.65rem;letter-spacing:.25em}.npd-mark{border:2px solid #16820c;border-radius:50%;background:white;color:#0c130b;font-size:1.45rem;padding:.65rem .5rem;letter-spacing:-.1em}.npd-mark b{color:#16820c}.npd-nav{font-size:.8rem;font-weight:700;text-transform:uppercase}.npd-button,.npd-shell .npd-button{font-size:.82rem;text-transform:uppercase;gap:1.5rem}.npd-header{padding:1.5rem 5%}.npd-header-quote{margin-left:1rem}
.npd-services{display:grid;grid-template-columns:repeat(4,1fr);padding:3rem 5%;gap:0}.npd-service{border-right:1px solid #dbe3da;padding:0 1.4rem;text-align:center;margin:0!important}.npd-service:last-child{border:0}.npd-service h3{font-size:1rem;letter-spacing:-.02em;line-height:1.35;text-transform:uppercase;margin:1rem 0}.npd-service p{font-size:.95rem;color:#364137;margin:0}.npd-service svg{width:40px;height:40px;color:#16820c;stroke:currentColor;stroke-width:1.7;fill:none}
.npd-band{display:flex;justify-content:space-between;gap:2rem;align-items:center;padding:2.6rem 6%;background:#070c0b;color:white}.npd-band p{margin:0;font-size:.85rem;letter-spacing:.1em}.npd-band strong{font-size:1.5rem;color:#53bb40}.npd-story{background:linear-gradient(90deg,white 8%,rgba(255,255,255,.96) 46%,rgba(255,255,255,.02) 86%),var(--npd-story-image) right center/cover;display:block;min-height:410px}.npd-story>h2,.npd-story>div{max-width:540px}.npd-story h2,.npd-cta h2{text-transform:uppercase;letter-spacing:-.025em}.npd-story p{color:#172016}.npd-cta{background:#070c0b;color:#fff;margin:0;padding:3rem 6%}.npd-cta p:last-child{color:#d1dbd0}.npd-cta .npd-eyebrow{color:#65d050}.npd-footer{background:#080d0c;color:#c0c9bd;border-color:#29312a}.npd-contact-intro{min-height:350px}.npd-contact-layout{background:#fff}.npd-contact-aside h2{text-transform:uppercase}.npd-nav a.npd-header-quote{background:#16820c;color:#fff;padding:.7rem 1rem;border:0}
@media(max-width:900px){.npd-header{flex-wrap:wrap}.npd-header-quote{display:none!important}.npd-services{grid-template-columns:1fr 1fr;gap:2rem}.npd-service:nth-child(2){border:0}.npd-band{flex-wrap:wrap}.npd-story{background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.88)),var(--npd-story-image) center/cover}.npd-hero,.npd-page-intro{background-position:65% center}}
@media(max-width:520px){.npd-services{grid-template-columns:1fr}.npd-service{border:0;border-bottom:1px solid #dbe3da;padding:0 0 2rem}.npd-hero h1{font-size:2.5rem}.npd-hero{padding:3rem 6%!important}.npd-page-intro h1{font-size:2.7rem}.npd-band{display:block}.npd-band p{margin:1rem 0}.npd-header-quote{display:none!important}}

/* One distinct image per section; page IDs remain stable across plugin updates. */
.npd-site{--npd-hero-image:url(hero-tower.png);--npd-story-image:url(home-technician.png)}
.npd-page-about{--npd-hero-image:url(about-team.png);--npd-story-image:url(about-hardware.png)}
.npd-page-contact{--npd-hero-image:url(contact-support.png)}
.npd-page-about .npd-page-intro{background-position:center 68%}
.npd-page-contact .npd-page-intro{background-position:center 54%}
@media(max-width:900px){.npd-story{background:#fff}.npd-story::after{content:"";display:block;height:280px;margin-top:2rem;background:var(--npd-story-image) 85% center/cover}.npd-page-about .npd-page-intro{background-position:74% 68%}.npd-page-contact .npd-page-intro{background-position:78% center}}
.npd-page-about .npd-page-intro h1{max-width:700px;font-size:clamp(2.7rem,4.1vw,3.8rem)}
