.nip-pc-website,.nip-pc-form,.nip-pc-jobs,.nip-pc-job-detail{--nip-red:#b52b26;--nip-ink:#28262b;--nip-line:#e8e1de;font-family:Arial,sans-serif;color:var(--nip-ink);line-height:1.7;box-sizing:border-box}.nip-pc-website *,.nip-pc-form *,.nip-pc-jobs *,.nip-pc-job-detail *{box-sizing:border-box}.nip-portal-canvas{margin:0;background:#fff}.nip-pc-website h1,.nip-pc-website h2,.nip-pc-website h3,.nip-pc-jobs h3,.nip-pc-job-detail h2{font-family:inherit;line-height:1.16;color:var(--nip-ink);margin:0 0 20px;letter-spacing:-.04em}.nip-pc-website h1{font-size:clamp(38px,5.2vw,76px);max-width:860px}.nip-pc-website h2{font-size:clamp(28px,3vw,46px)}.nip-pc-website p{color:#746c69}.nip-pc-topline{background:#292524;color:#e4ddda;padding:7px max(24px,calc((100vw - 1240px)/2));font-size:11px;display:flex;gap:22px}.nip-pc-header{max-width:1320px;padding:25px 30px;margin:auto;display:flex;gap:30px;align-items:center}.nip-pc-brand{display:grid;place-items:center;background:var(--nip-red);color:#fff!important;text-decoration:none;font-size:34px;font-weight:800;width:90px;height:65px;letter-spacing:-3px}.nip-pc-header nav{margin-left:auto;display:flex;gap:22px;flex-wrap:wrap;font-size:13px}.nip-pc-header nav a{color:#5c514d;text-decoration:none}.nip-pc-header nav a[aria-current],.nip-pc-header nav a:hover{color:var(--nip-red)}.nip-pc-button{display:inline-flex;align-items:center;justify-content:center;background:var(--nip-red);border:1px solid var(--nip-red);border-radius:7px;color:#fff!important;text-decoration:none;padding:13px 19px;font:600 13px/1.5 Arial,sans-serif;cursor:pointer;transition:background .15s}.nip-pc-button:hover{background:#95221e;color:#fff}.nip-pc-hero{background:#faf8f6;display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center;padding:65px max(30px,calc((100vw - 1240px)/2));overflow:hidden}.nip-pc-hero>div{padding:15px 0}.nip-pc-hero>img{width:100%;height:560px;object-fit:cover;border-radius:13px}.nip-pc-eyebrow{font-size:11px;color:var(--nip-red)!important;font-weight:700;text-transform:uppercase;letter-spacing:1.5px}.nip-pc-hero p:not(.nip-pc-eyebrow){font-size:16px;max-width:600px;margin:0 0 30px}.nip-pc-section{padding:75px 30px;max-width:1300px;margin:auto}.nip-pc-section>p{max-width:740px;margin-bottom:30px}.nip-pc-about{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.nip-pc-about>img{width:100%;height:420px;border-radius:12px;object-fit:cover}.nip-pc-contact{display:grid;grid-template-columns:1fr 1.2fr;gap:50px}.nip-pc-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap;background:#2b2422;color:#f5efec;font-size:12px;padding:40px max(30px,calc((100vw - 1240px)/2))}.nip-pc-form{padding:28px;border:1px solid var(--nip-line);background:#fff;border-radius:12px;max-width:900px;position:relative}.nip-pc-form h3{font-size:25px;line-height:1.3;margin:0 0 15px;color:#322b28}.nip-pc-form>p{font-size:13px;color:#7b706b;margin:0 0 22px}.nip-pc-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.nip-pc-field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;margin-bottom:16px}.nip-pc-field input,.nip-pc-field select,.nip-pc-field textarea{width:100%;border:1px solid #e4dbd7;border-radius:6px;background:#fff;padding:11px 12px;font:14px/1.5 Arial,sans-serif;color:#342d2a;box-shadow:none}.nip-pc-field small{font-size:11px;color:#948781}.nip-pc-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;font-weight:400;margin:9px 0 22px}.nip-pc-consent input{margin-top:5px;accent-color:var(--nip-red)}.nip-pc-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.nip-pc-notice{background:#edf7f0;border:1px solid #c3dfcc;padding:16px 20px;margin-bottom:25px;border-radius:8px;color:#346343;font-size:14px}.nip-pc-empty{border:1px solid #e7dedb;background:#faf8f6;border-radius:10px;padding:30px;text-align:center;color:#81736d}.nip-pc-jobs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}.nip-pc-job-card{border:1px solid var(--nip-line);border-radius:10px;background:#fff;padding:27px}.nip-pc-job-card h3{font-size:23px;margin-bottom:15px}.nip-pc-job-card p{font-size:13px;color:#81736d;margin:0 0 18px}.nip-pc-job-detail{padding:30px 0;max-width:850px}.nip-pc-job-detail h2{font-size:38px;margin-top:20px}.nip-pc-job-detail h3{margin-top:26px}.nip-pc-job-detail li{margin-bottom:9px}.nip-pc-job-copy{white-space:normal;margin:25px 0}.nip-pc-logos{overflow:hidden;padding:25px 0;margin-top:20px;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}.nip-pc-logo-track{display:flex;align-items:center;gap:65px;width:max-content;animation:nip-pc-running 35s linear infinite}.nip-pc-logo-track img{object-fit:contain;width:135px;height:75px;flex-shrink:0}.nip-pc-logos:hover .nip-pc-logo-track{animation-play-state:paused}@keyframes nip-pc-running{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.nip-pc-logo-track{animation:none}}@media(max-width:1000px){.nip-pc-header{flex-wrap:wrap;gap:20px}.nip-pc-header nav{order:3;width:100%;margin:0;justify-content:center}.nip-pc-header>.nip-pc-button{margin-left:auto}.nip-pc-hero{gap:30px;padding-block:45px}.nip-pc-hero>img{height:430px}.nip-pc-jobs{grid-template-columns:repeat(2,minmax(0,1fr))}.nip-pc-about,.nip-pc-contact{gap:30px}}@media(max-width:650px){.nip-pc-topline{padding:7px 18px;flex-wrap:wrap;gap:0 16px;font-size:10px}.nip-pc-header{padding:20px}.nip-pc-brand{font-size:28px;width:70px;height:52px}.nip-pc-header nav{justify-content:flex-start;gap:12px 19px;font-size:12px}.nip-pc-hero{grid-template-columns:1fr;padding:35px 20px;gap:20px}.nip-pc-hero>img{height:350px}.nip-pc-section{padding:45px 20px}.nip-pc-about,.nip-pc-contact,.nip-pc-jobs,.nip-pc-grid{grid-template-columns:1fr}.nip-pc-about>img{height:300px}.nip-pc-form{padding:22px 18px}.nip-pc-form h3{font-size:22px}.nip-pc-job-card{padding:23px}.nip-pc-footer{padding:30px 20px;flex-direction:column;align-items:flex-start;gap:10px}.nip-pc-logo-track{gap:35px}.nip-pc-logo-track img{width:105px;height:60px}}

/* Public vacancy facts; values are supplied by the existing jobs feed. */
.nip-pc-job-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:24px 0;padding:20px 0;border-block:1px solid var(--nip-line,#e8e1de)}.nip-pc-job-facts>div{min-width:0}.nip-pc-job-facts dt{font-size:11px;font-weight:600;color:#8a7c75;margin:0 0 5px}.nip-pc-job-facts dd{font-size:14px;color:#3c332f;font-weight:600;margin:0;overflow-wrap:anywhere}@media(max-width:500px){.nip-pc-job-facts{grid-template-columns:1fr;gap:14px;padding:18px 0}}

/* Keep the published site consistent with its portal builder preview. */
.nip-pc-brand{background:transparent;letter-spacing:normal;flex-shrink:0}.nip-pc-brand img{display:block;width:100%;height:100%;object-fit:contain}.nip-pc-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:32px}.nip-pc-service-card{border:1px solid var(--nip-line);border-radius:10px;padding:30px 25px;min-width:0}.nip-pc-service-card small{font-size:12px;opacity:.65}.nip-pc-service-card h3{font-size:24px;margin:22px 0 15px}.nip-pc-service-card p{font-size:14px;line-height:1.8}.nip-pc-service-card a{font-size:12px;font-weight:600;color:var(--nip-red);text-decoration:none}.nip-pc-service-card:first-child{background:var(--nip-red);border-color:var(--nip-red);color:#fff}.nip-pc-service-card:first-child h3,.nip-pc-service-card:first-child a{color:#fff}.nip-pc-service-card:first-child p{color:#f2d4d0}@media(max-width:650px){.nip-pc-service-grid{grid-template-columns:1fr;gap:15px}.nip-pc-service-card{padding:25px}}

/* Portal-owned links retain NIP colors even when the WordPress theme styles links. */
body :is(.nip-pc-website,.nip-pc-form,.nip-pc-jobs,.nip-pc-job-detail) a,
body :is(.nip-pc-website,.nip-pc-form,.nip-pc-jobs,.nip-pc-job-detail) a:visited{color:#b52b26!important}
body :is(.nip-pc-website,.nip-pc-form,.nip-pc-jobs,.nip-pc-job-detail) a:hover,
body :is(.nip-pc-website,.nip-pc-form,.nip-pc-jobs,.nip-pc-job-detail) a:focus{color:#95221e!important}
body .nip-pc-website .nip-pc-header nav a,
body .nip-pc-website .nip-pc-header nav a:visited{color:#5c514d!important}
body .nip-pc-website .nip-pc-header nav a[aria-current],
body .nip-pc-website .nip-pc-header nav a:hover,
body .nip-pc-website .nip-pc-header nav a:focus{color:#b52b26!important}
body :is(.nip-pc-website,.nip-pc-form,.nip-pc-jobs,.nip-pc-job-detail) a.nip-pc-button,
body :is(.nip-pc-website,.nip-pc-form,.nip-pc-jobs,.nip-pc-job-detail) a.nip-pc-button:visited,
body :is(.nip-pc-website,.nip-pc-form,.nip-pc-jobs,.nip-pc-job-detail) a.nip-pc-button:hover,
body :is(.nip-pc-website,.nip-pc-form,.nip-pc-jobs,.nip-pc-job-detail) a.nip-pc-button:focus,
body .nip-pc-website .nip-pc-service-card:first-child a,
body .nip-pc-website .nip-pc-service-card:first-child a:visited,
body .nip-pc-website .nip-pc-service-card:first-child a:hover,
body .nip-pc-website .nip-pc-service-card:first-child a:focus{color:#fff!important}
