/* Additions for pages and site features that were not in the original design.
   Built on the design's own tokens (Inter, greens, card radius). */
.nt-hero{padding-bottom:10px}
.nt-hero .cq-head{text-align:center;margin:0 auto}
.nt-meta{margin-top:14px!important;font-size:15px;color:#5D6B63}
.nt-meta a{color:#004928;font-weight:600}
.nt-avatar{width:96px;height:96px;border-radius:50%;object-fit:cover;margin:22px auto 0;display:block}
.nt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:8px}
.nt-card{display:flex;flex-direction:column;background:#fff;border:1px solid #E6ECE8;border-radius:var(--r-lg,24px);overflow:hidden;box-shadow:var(--sh-rest);transition:transform .35s,box-shadow .35s;color:inherit}
.nt-card:hover{transform:translateY(-4px);box-shadow:var(--sh-hover)}
.nt-card[hidden]{display:none}
.nt-card-im{aspect-ratio:16/10;overflow:hidden;background:#F3F7F4}
.nt-card-im img{width:100%;height:100%;object-fit:cover}
.nt-card-b{padding:22px 24px 26px;display:flex;flex-direction:column;gap:10px;flex:1}
.nt-card-b small{font-size:13px;font-weight:600;color:#01A535;text-transform:uppercase;letter-spacing:.04em}
.nt-card-b h3{font-size:20px;line-height:1.3;font-weight:600;color:#0E1712}
.nt-card-b p{font-size:15px;line-height:1.6;color:#5D6B63}
.nt-kn{color:#004928;font-size:18px}
.nt-more{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;color:#004928}
.nt-more svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.nt-chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:0 0 34px}
.nt-chips a{padding:9px 16px;border-radius:999px;border:1px solid #DDE5E0;font-size:14.5px;font-weight:500;color:#33413A;background:#fff}
.nt-chips a.on,.nt-chips a:hover{background:#004928;border-color:#004928;color:#fff}
.nt-filters{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin:0 0 34px}
.nt-filters label{display:flex;align-items:center;gap:10px;font-size:14.5px;font-weight:600;color:#33413A}
.nt-filters select{height:44px;border-radius:12px;border:1px solid #DDE5E0;padding:0 14px;font:inherit;font-weight:500;background:#fff}
.nt-empty{text-align:center;color:#5D6B63;font-size:17px;padding:30px 0}
.nt-article{max-width:860px}
.nt-feature{margin:0 0 34px;border-radius:var(--r-lg,24px);overflow:hidden}
.nt-feature img{width:100%;height:auto;display:block}
.nt-prose{font-size:17px;line-height:1.75;color:#33413A}
.nt-prose>*+*{margin-top:1.05em}
.nt-prose h2{font-size:30px;line-height:1.25;color:#0E1712;font-weight:600;margin-top:1.6em}
.nt-prose h3{font-size:22px;line-height:1.3;color:#0E1712;font-weight:600;margin-top:1.4em}
.nt-prose h4{font-size:18px;color:#0E1712;font-weight:600}
.nt-prose a{color:#004928;text-decoration:underline;text-underline-offset:3px}
.nt-prose ul,.nt-prose ol{padding-left:1.4em}
.nt-prose ul{list-style:disc}.nt-prose ol{list-style:decimal}
.nt-prose li+li{margin-top:.4em}
.nt-prose img{max-width:100%;height:auto;border-radius:16px}
.nt-prose blockquote{border-left:4px solid #01BB3C;padding:6px 0 6px 20px;color:#0E1712;font-style:italic}
.nt-prose pre{background:#0E1712;color:#E6F6EC;padding:18px 20px;border-radius:14px;overflow:auto;font-size:14px;line-height:1.6}
.nt-prose code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}
.nt-prose table{width:100%;border-collapse:collapse;font-size:15px}
.nt-prose th,.nt-prose td{border:1px solid #E1E7E3;padding:10px 12px;text-align:left}
.nt-prose th{background:#F5F7F6}
.nt-prose .nt-embed{position:relative;aspect-ratio:16/9}
.nt-prose .nt-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:16px}
.nt-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.nt-tags a{font-size:14px;color:#004928;background:#E6F6EC;padding:6px 12px;border-radius:999px}
.nt-back{margin-top:40px;font-weight:600}
.nt-back a{color:#004928}
.nt-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:0 0 30px}
.nt-nums div{background:#F5F7F6;border-radius:18px;padding:20px}
.nt-nums b{display:block;font-size:32px;color:#004928;font-weight:700;letter-spacing:-.02em}
.nt-nums span{font-size:14.5px;color:#5D6B63}
.nt-facts{list-style:none;padding:0;margin:0 0 30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
.nt-facts li{font-size:15px;color:#0E1712}
.nt-facts small{display:block;font-size:12.5px;color:#8A958F;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.nt-facts a{color:#004928}
.nt-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:34px}
.nt-gallery img{width:100%;border-radius:16px}
.nt-quote{margin:40px 0 0;padding:30px;border-radius:24px;background:#F5F7F6}
.nt-quote p{font-size:21px;line-height:1.5;color:#0E1712}
.nt-quote cite{display:block;margin-top:14px;font-style:normal;color:#5D6B63}
.nt-job{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:48px;align-items:start}
.nt-apply-w{background:#fff;border:1px solid #E6ECE8;border-radius:24px;padding:28px;box-shadow:var(--sh-rest);position:sticky;top:110px}
.nt-apply-w h2{font-size:22px;font-weight:600;margin-bottom:18px;color:#0E1712}
.nt-apply-w .cq-row2{grid-template-columns:1fr}
.nt-small{font-size:14px;color:#5D6B63;margin-top:16px}
.nt-small a{color:#004928}
.nt-draft{position:relative;z-index:60;margin:92px auto 0;max-width:900px;background:#FFF4D6;color:#5A4300;border:1px solid #F1D48A;border-radius:12px;padding:10px 16px;font-size:14.5px;text-align:center}
.nt-cap{margin:6px 0 14px}
@media (max-width:1180px){.nt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nt-job{grid-template-columns:1fr}.nt-apply-w{position:static}}
@media (max-width:760px){.nt-grid{grid-template-columns:1fr}.nt-prose{font-size:16px}.nt-prose h2{font-size:24px}.nt-gallery{grid-template-columns:1fr}}
/* cookie notice, announcement, preview bar */
.nt-cookie{position:fixed;left:16px;bottom:16px;z-index:200;max-width:380px;background:#fff;border:1px solid #E1E7E3;border-radius:16px;box-shadow:0 18px 40px rgba(15,26,20,.14);padding:16px 18px;font:14px/1.5 Inter,system-ui,sans-serif;color:#33413A}
.nt-cookie[hidden],.nt-ann[hidden]{display:none}
.nt-cookie a{color:#004928;text-decoration:underline}
.nt-cookie div{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}
.nt-cookie button{height:36px;padding:0 16px;border-radius:999px;border:1px solid #DDE5E0;background:#fff;font:600 14px Inter,sans-serif;cursor:pointer;color:#0E1712}
.nt-cookie button.on{background:#004928;border-color:#004928;color:#fff}
.nt-ann{position:fixed;left:50%;transform:translateX(-50%);bottom:18px;z-index:190;display:flex;align-items:center;gap:12px;background:#004928;color:#fff;border-radius:999px;padding:10px 12px 10px 20px;font:500 14.5px Inter,system-ui,sans-serif;box-shadow:0 14px 34px rgba(0,73,40,.3);max-width:calc(100% - 32px)}
.nt-ann a,.nt-ann span{color:#fff}
.nt-ann a{text-decoration:underline;text-underline-offset:3px}
.nt-ann button{width:28px;height:28px;border-radius:50%;border:0;background:rgba(255,255,255,.16);color:#fff;cursor:pointer}
.nt-pv{position:fixed;right:14px;bottom:14px;z-index:9999;display:flex;align-items:center;gap:12px;background:#0E1712;color:#fff;border-radius:999px;padding:8px 8px 8px 16px;font:500 13px Inter,system-ui,sans-serif;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.nt-pv a{background:#01BB3C;color:#04220F;border-radius:999px;padding:6px 12px;font-weight:600}
html.nt-in-editor .nt-pv{display:none}
html.nt-click [data-edit]{cursor:pointer}
html.nt-click [data-edit]:hover{outline:2px dashed #01BB3C;outline-offset:3px}
.nt-flash{outline:3px solid #01BB3C!important;outline-offset:4px;transition:outline-color .6s}
.nt-maint{margin:0;min-height:100vh;display:grid;place-items:center;background:#FAFCFB;font-family:Inter,system-ui,sans-serif;color:#0E1712;text-align:center;padding:24px}
.nt-maint h1{font-size:40px;margin:28px 0 10px}
.nt-maint p{color:#5D6B63;font-size:17px;margin:8px 0}
.nt-maint a{color:#004928}
.nt-maint-admin{margin-top:40px!important;font-size:13px!important}
/* header dropdowns (Products, Services): wider and a little taller on desktop */
@media (min-width:1181px){
.header .mega.mega-products{width:840px!important;padding:12px 18px 20px!important}
.header .mega.mega-sv{width:840px!important;padding:12px 18px 20px!important}
.header .mega .mega-label{margin:18px 22px 14px}
.header .mega .prod-grid{gap:12px!important;padding:0 4px 4px!important}
.header .mega .prod{padding:22px 24px!important}
.header .mega .prod p{margin-top:10px!important}
.header .mega .sv-grid{gap:12px}
.header .mega .sv-mi{padding:22px 22px}
}
/* company profile preview (home page) */
.nt-pf-open{cursor:pointer}
.nt-pf-open:focus-visible{outline:3px solid #01BB3C;outline-offset:6px;border-radius:24px}
/* the profile cover stays put on hover (TL review) */
html .pf-cov:hover .pf-pg.b{transform:translate(-50%,-50%) translate(40px,34px) rotateY(-12deg) rotateX(6deg) rotate(-2deg)!important}
html .pf-cov:hover .pf-pg.m{transform:translate(-50%,-50%) translate(22px,20px) rotate(3.5deg)}
#product-family{scroll-margin-top:110px}
html.nt-pfv-lock,html.nt-pfv-lock body{overflow:hidden}
.nt-pfv{position:fixed;inset:0;z-index:300;background:rgba(14,23,18,.6);display:grid;place-items:center;padding:24px;opacity:0;transition:opacity .25s}
.nt-pfv.on{opacity:1}
.nt-pfv-box{width:min(1100px,100%);height:min(88vh,900px);background:#fff;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 80px rgba(0,0,0,.35);transform:translateY(12px);transition:transform .25s}
.nt-pfv.on .nt-pfv-box{transform:none}
.nt-pfv-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px 12px 20px;border-bottom:1px solid #E1E7E3;font:15px Inter,system-ui,sans-serif;color:#0E1712}
.nt-pfv-bar span{display:flex;align-items:center;gap:8px}
.nt-pfv-dl,.nt-pfv-nt{height:36px;display:inline-flex;align-items:center;padding:0 14px;border-radius:999px;font:600 13.5px Inter,sans-serif;text-decoration:none}
.nt-pfv-dl{background:#004928;color:#fff}
.nt-pfv-nt{border:1px solid #DDE5E0;color:#0E1712}
.nt-pfv-x{width:36px;height:36px;border-radius:50%;border:0;background:#F1F4F2;cursor:pointer;font-size:15px;color:#33413A}
.nt-pfv-x:hover{background:#E4EAE6}
.nt-pfv-doc{flex:1;width:100%;overflow:auto;background:#3F4441;display:flex;flex-direction:column;align-items:center;gap:16px;padding:16px;outline:none}
.nt-pfv-doc iframe{width:100%;height:100%;border:0;flex:1}
.nt-pfv-page{background:#fff;box-shadow:0 6px 24px rgba(0,0,0,.35);border-radius:4px;max-width:100%;height:auto!important;flex-shrink:0}
.nt-pfv-load{color:#E6ECE8;font:15px Inter,system-ui,sans-serif;margin:auto}
.nt-pfv-empty{flex:1;display:grid;place-content:center;text-align:center;gap:10px;font:16px Inter,system-ui,sans-serif;color:#5D6B63;padding:30px}
.nt-pfv-empty b{font-size:22px;color:#0E1712}
.nt-pfv-empty a{justify-self:center;margin-top:8px;height:44px;display:inline-flex;align-items:center;padding:0 22px;border-radius:999px;background:#004928;color:#fff;font-weight:600}
@media (max-width:760px){.nt-pfv{padding:0}.nt-pfv-box{height:100%;border-radius:0}.nt-pfv-bar b{font-size:13px}.nt-pfv-nt{display:none!important}}
