
:root{--ncg:#0b7a35;--ncgd:#075b28;--nct:#111827;--ncm:#667085;--ncl:#e8eaed;--ncs:#f7f8f7}
.newco-home{font-family:Arial,Helvetica,sans-serif;color:var(--nct);max-width:1440px;margin:auto;background:#fff}
.newco-home-page .wp-block-post-title{display:none!important}
.newco-home-page,.newco-branded-page{overflow-x:hidden}
.newco-home,.newco-page-shell,.newco-home *,.newco-page-shell *{box-sizing:border-box}
.newco-home img,.newco-page-shell img{max-width:100%;height:auto}

/* Branded homepage header v1.0.17 */
.newco-home-page header.wp-block-template-part{display:none !important}
.newco-site-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:34px;min-height:86px;padding:14px 52px;border-bottom:1px solid #e6e8ea;background:#fff}
.newco-header-logo{display:block;line-height:0;text-decoration:none!important}
.newco-header-logo img{display:block;width:184px;height:auto;max-width:100%;border:0!important;box-shadow:none!important}
.newco-primary-nav{display:flex;justify-content:flex-end;align-items:center;gap:27px}
.newco-primary-nav a{color:#27303f!important;font-size:15px;line-height:1.25;font-weight:700;text-decoration:none!important;white-space:nowrap}
.newco-primary-nav a:hover,.newco-primary-nav a:focus-visible{color:var(--ncg)!important}
.newco-primary-nav a:focus-visible,.newco-header-logo:focus-visible,.newco-header-cta:focus-visible{outline:3px solid rgba(11,122,53,.24);outline-offset:4px;border-radius:4px}
.newco-header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 19px;border-radius:6px;background:var(--ncg);color:#fff!important;font-size:15px;font-weight:700;text-decoration:none!important;white-space:nowrap}
.newco-header-cta:hover{background:var(--ncgd)}
@media(max-width:1050px){.newco-site-header{grid-template-columns:auto 1fr;gap:12px 24px;padding:14px 28px 13px}.newco-primary-nav{gap:19px}.newco-header-cta{display:none}}
@media(max-width:760px){.newco-site-header{grid-template-columns:1fr;gap:12px;min-height:auto;padding:14px 20px 13px}.newco-header-logo img{width:162px}.newco-primary-nav{justify-content:flex-start;gap:9px 18px;overflow-x:auto;padding:2px 2px 5px;scrollbar-width:thin}.newco-primary-nav a{font-size:14px}}

/* iPhone and tablet layout correction v1.0.20 */
@media(max-width:960px){
  .newco-home,.newco-page-shell{width:100%;max-width:100%;overflow-x:hidden}
  .newco-why-grid,.newco-why,.newco-two-column,.newco-benefit-grid{grid-template-columns:1fr!important}
  .newco-why-item,.newco-job-card,.newco-form-card{width:100%;max-width:none}
  .newco-site-footer{width:auto;margin-left:20px;margin-right:20px}
}

@media(max-width:600px){
  .newco-primary-nav{width:100%;max-width:100%;padding-bottom:7px}
  .newco-hero-copy{width:100%}
  .newco-hero h1{font-size:clamp(34px,10vw,44px)}
  .newco-section-head{align-items:flex-start;flex-direction:column}
  .newco-sector-grid{width:100%}
  .newco-job-grid{width:100%}
  .newco-contact-band{width:auto}
}

/* Choice A: compact top-left mobile header v1.0.21 */
@media(max-width:600px){
  .newco-home-page .wp-block-post-content,
  .newco-branded-page .wp-block-post-content{
    margin-block-start:0!important;
    padding-top:0!important;
  }

  .newco-home,
  .newco-page-shell{
    margin-top:0!important;
    padding-top:0!important;
  }

  .newco-site-header{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:start!important;
    gap:9px!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:10px 16px 12px!important;
  }

  .newco-header-logo{
    display:block!important;
    justify-self:start!important;
    width:138px!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    line-height:0!important;
  }

  .newco-header-logo img{
    display:block!important;
    width:138px!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:left center!important;
  }

  .newco-primary-nav{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:7px 15px!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:1px 0 0!important;
    overflow:visible!important;
  }

  .newco-primary-nav a{
    flex:0 0 auto!important;
    margin:0!important;
    padding:3px 0!important;
    font-size:12px!important;
    line-height:1.25!important;
    white-space:nowrap!important;
  }

  .newco-header-cta{display:none!important}
}

/* Approved mobile header correction v1.0.22 */
@media(max-width:600px){
  body.newco-home-page .wp-site-blocks,
  body.newco-home-page .wp-site-blocks>*,
  body.newco-home-page main,
  body.newco-home-page main.wp-block-group,
  body.newco-home-page .entry-content,
  body.newco-home-page .wp-block-post-content,
  body.newco-home-page .wp-block-post-content>.newco-home{
    margin-top:0!important;
    padding-top:0!important;
  }

  body.newco-home-page main>.wp-block-spacer:first-child,
  body.newco-home-page .wp-block-post-content>.wp-block-spacer:first-child{
    display:none!important;
  }

  .newco-primary-nav{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px 10px!important;
    align-items:center!important;
  }

  .newco-primary-nav a{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    padding:4px 0!important;
    text-align:left!important;
  }
}

/* Approved mobile logo alignment and spacing v1.0.23 */
@media(max-width:600px){
  body.newco-home-page .wp-block-shortcode,
  body.newco-home-page .wp-block-post-content > *:first-child,
  body.newco-home-page main > *:first-child{
    margin-block-start:0!important;
    margin-top:0!important;
    padding-block-start:0!important;
    padding-top:0!important;
  }

  body.newco-home-page .newco-site-header{
    padding:0 20px 12px!important;
  }

  body.newco-home-page .newco-header-logo,
  body.newco-home-page .newco-header-logo img{
    width:166px!important;
    max-width:166px!important;
  }
}

/* Cropped authoritative mobile header logo v1.0.24 */
@media(max-width:600px){
  body.newco-home-page .newco-header-logo,
  body.newco-home-page .newco-header-logo img{
    width:120px!important;
    max-width:120px!important;
  }
}

/* Launch-critical pages v1.0.18 */
.newco-branded-page header.wp-block-template-part,.newco-branded-page footer.wp-block-template-part,.newco-branded-page .wp-block-post-title{display:none!important}
.newco-page-shell{font-family:Arial,Helvetica,sans-serif;color:var(--nct);max-width:1440px;margin:auto;background:#fff}
.newco-page-hero{padding:66px 52px 62px;background:#f5faf7;border-bottom:1px solid #e2ebe5;text-align:center}
.newco-page-hero .newco-eyebrow{display:block;margin-bottom:10px;color:var(--ncg);font-size:13px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.newco-page-hero h1{max-width:850px;margin:0 auto 15px;color:#111827;font-size:clamp(38px,5vw,62px);line-height:1.05;letter-spacing:-.035em}
.newco-page-hero p{max-width:720px;margin:0 auto;color:#4b5563;font-size:18px;line-height:1.55}
.newco-page-content{padding:52px;max-width:1180px;margin:0 auto}
.newco-reading-width{max-width:940px}
.newco-page-content h2{margin:0 0 13px;font-size:27px;line-height:1.2;color:#111827}
.newco-page-content h3{margin:0 0 5px;font-size:18px;color:#111827}
.newco-page-content p,.newco-page-content li{color:#4b5563;font-size:16px;line-height:1.62}
.newco-two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);gap:54px;align-items:start}
.newco-step{display:grid;grid-template-columns:38px 1fr;gap:14px;margin:22px 0}
.newco-step>b{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#e8f5ec;color:var(--ncgd)}
.newco-step p{margin:0}
.newco-note{margin-top:27px;padding:17px 19px;border-left:4px solid var(--ncg);background:#f5faf7;color:#374151;line-height:1.5}
.newco-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:48px}
.newco-benefit-grid article{padding:25px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}
.newco-benefit-grid article h2{font-size:19px}
.newco-benefit-grid article p{margin:0;font-size:15px}
.newco-employer-contact{padding-top:42px;border-top:1px solid #e8eaed}
.newco-check-list{list-style:none;padding:0;margin:22px 0}
.newco-check-list li{position:relative;padding:5px 0 5px 28px}
.newco-check-list li:before{content:'✓';position:absolute;left:0;color:var(--ncg);font-weight:800}
.newco-form-card{padding:27px;border:1px solid #e1e5e3;border-radius:10px;background:#fbfcfb}
.newco-form-card h2{font-size:23px}
.newco-form{display:grid;gap:15px}
.newco-form label{display:grid;gap:6px;color:#27303f;font-size:14px;font-weight:700}
.newco-form input,.newco-form textarea{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid #cfd5d2;border-radius:6px;background:#fff;color:#111827;font:inherit}
.newco-form input:focus,.newco-form textarea:focus{outline:3px solid rgba(11,122,53,.18);border-color:var(--ncg)}
.newco-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.newco-form .newco-consent{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:9px;font-weight:400;line-height:1.45}
.newco-form .newco-consent input{width:auto;margin-top:3px}
.newco-page-shell .newco-form button[type="submit"],.newco-branded-page .newco-form button[type="submit"]{appearance:none!important;-webkit-appearance:none!important;border:0!important;border-radius:6px!important;padding:12px 18px!important;background:#0b7a35!important;background-color:#0b7a35!important;color:#fff!important;font-family:Arial,Helvetica,sans-serif!important;font-size:15px!important;font-weight:800!important;line-height:1.25!important;text-transform:none!important;box-shadow:none!important;cursor:pointer!important}
.newco-page-shell .newco-form button[type="submit"]:hover,.newco-page-shell .newco-form button[type="submit"]:focus-visible,.newco-branded-page .newco-form button[type="submit"]:hover,.newco-branded-page .newco-form button[type="submit"]:focus-visible{background:#075b28!important;background-color:#075b28!important;color:#fff!important}
.newco-honeypot{position:absolute!important;left:-9999px!important}
.newco-form-success,.newco-form-error{margin-bottom:16px;padding:12px 14px;border-radius:6px;font-weight:700}
.newco-form-success{background:#e8f5ec;color:#075b28}.newco-form-error{background:#fef2f2;color:#991b1b}
.newco-inline-link{color:var(--ncg)!important;font-weight:700}
.newco-page-cta{margin-top:42px;padding:27px 30px;border-radius:9px;background:var(--ncg);color:#fff}
.newco-page-cta h2,.newco-page-cta p{color:#fff}.newco-page-cta p{margin:0 0 16px}
.newco-page-cta a{display:inline-block;padding:10px 15px;border-radius:5px;background:#fff;color:var(--ncgd)!important;font-weight:800;text-decoration:none!important}
.newco-legal h2{margin-top:32px;font-size:22px}.newco-legal a{color:var(--ncg);font-weight:700}
.newco-vacancy-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 23px}
.newco-filter-link{padding:8px 12px;border:1px solid #d9dedb;border-radius:999px;color:#374151!important;font-size:13px;font-weight:700;text-decoration:none!important}
.newco-filter-link:hover,.newco-filter-link.is-active{border-color:var(--ncg);background:#e8f5ec;color:var(--ncgd)!important}
.newco-empty-state{grid-column:1/-1;padding:42px;border:1px dashed #cfd5d2;border-radius:9px;text-align:center;background:#fbfcfb}
.newco-empty-state h2{font-size:22px}.newco-empty-state p{margin:0 0 12px}
.newco-vacancy-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0 0 34px;background:#e2e7e4;border:1px solid #e2e7e4;border-radius:8px;overflow:hidden}
.newco-vacancy-details>div{padding:15px 17px;background:#fff}.newco-vacancy-details dt{color:#667085;font-size:12px;font-weight:700;text-transform:uppercase}.newco-vacancy-details dd{margin:4px 0 0;color:#111827;font-size:15px;font-weight:700}
.newco-vacancy-copy{font-size:16px;line-height:1.65}.newco-vacancy-requirements{margin-top:30px}
@media(max-width:800px){.newco-page-hero{padding:42px 20px}.newco-page-content{padding:34px 20px}.newco-two-column,.newco-benefit-grid{grid-template-columns:1fr}.newco-two-column{gap:32px}.newco-form-row{grid-template-columns:1fr}.newco-benefit-grid{margin-bottom:34px}.newco-vacancy-details{grid-template-columns:1fr}}

.newco-hero{display:grid;grid-template-columns:46% 54%;min-height:500px;background:#fff;overflow:hidden}
.newco-hero-copy{padding:58px 52px;display:flex;flex-direction:column;justify-content:center}
.newco-hero h1{font-size:clamp(42px,5vw,70px);line-height:1.04;letter-spacing:-.035em;margin:0 0 22px;font-weight:800}
.newco-hero h1 span{color:var(--ncg)}
.newco-hero p{font-size:19px;line-height:1.55;max-width:580px;margin:0 0 28px}
.newco-hero-photo{background-size:cover;background-position:center right;min-height:500px}
.newco-audience{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:650px}
.newco-audience-card{position:relative;border:1.5px solid var(--ncg);border-radius:7px;padding:18px 44px 18px 18px;color:var(--nct);background:#fff;text-decoration:none}
.newco-audience-card.primary{background:var(--ncg);color:#fff}
.newco-audience-card strong,.newco-audience-card small{display:block}.newco-audience-card strong{font-size:18px}.newco-audience-card small{margin-top:3px;font-size:14px}.newco-audience-card b{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:25px}
.newco-section{padding:42px 52px;border-top:1px solid var(--ncl)}.newco-section h2{font-size:30px;margin:0 0 25px;text-align:center}
.newco-section-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.newco-section-head h2{text-align:left;margin:0}.newco-section-head a{color:var(--ncg);font-weight:700;text-decoration:none}

.newco-job-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px}.newco-job-card{border:1px solid var(--ncl);border-radius:9px;padding:20px;background:#fff;box-shadow:0 3px 16px rgba(16,24,40,.05)}.newco-job-card h3{font-size:21px;margin:0 0 8px}.newco-job-meta{font-size:14px;color:var(--ncm);margin:7px 0}.newco-tags{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.newco-tags span{background:#e8f5ec;color:var(--ncgd);border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700}.newco-pay{font-size:18px;font-weight:800;margin:13px 0}.newco-job-foot{display:flex;gap:13px;flex-wrap:wrap;font-size:12px;color:var(--ncm);margin:13px 0}.newco-filled{color:var(--ncg)!important;font-weight:700}.newco-button{display:block;text-align:center;background:var(--ncg);color:#fff!important;padding:12px;border-radius:5px;text-decoration:none!important;font-weight:700}
.newco-why{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;text-align:center}.newco-why strong{font-size:18px}.newco-why p{color:var(--ncm);line-height:1.5}
.newco-contact-band{display:grid;grid-template-columns:1fr 1fr;background:var(--ncg);margin:0 52px 42px;border-radius:7px;overflow:hidden}.newco-contact-band a{color:#fff!important;text-decoration:none!important;padding:22px 28px;display:flex;flex-direction:column}.newco-contact-band a+a{border-left:1px solid rgba(255,255,255,.35)}.newco-contact-band strong{font-size:20px}.newco-contact-band span{font-size:14px;opacity:.92;margin-top:3px}
@media(max-width:900px){.newco-hero{grid-template-columns:1fr;min-height:auto}.newco-hero-copy{padding:30px 20px 20px}.newco-hero-photo{min-height:250px}.newco-audience{grid-template-columns:1fr}.newco-section{padding:30px 18px}.newco-job-grid,.newco-why{grid-template-columns:1fr}.newco-contact-band{grid-template-columns:1fr;margin:0 18px 28px}.newco-contact-band a+a{border-left:0;border-top:1px solid rgba(255,255,255,.35)}}
@media(max-width:430px){.newco-hero h1{font-size:38px}.newco-hero p{font-size:17px}.newco-hero-photo{min-height:205px}.newco-section h2{font-size:25px}.newco-section-head{align-items:flex-end}}

/* NewCo sectors — compact clickable treatment v1.0.8 */
.newco-sectors-section{
  padding-top:36px;
  padding-bottom:38px;
}

.newco-sectors-section h2{
  margin:0 0 28px;
  text-align:center;
  font-size:28px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:-.02em;
  color:#111827;
}

.newco-sector-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
  max-width:1120px;
  margin:0 auto;
}

.newco-sector-link{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  min-width:0;
  padding:10px 8px 12px;
  text-align:center;
  text-decoration:none !important;
  color:#111827 !important;
  border-radius:8px;
  cursor:pointer;
  transition:background-color .15s ease, transform .15s ease;
}

.newco-sector-link svg{
  display:block !important;
  width:44px !important;
  height:44px !important;
  max-width:44px !important;
  max-height:44px !important;
  flex:0 0 44px !important;
  margin:0 0 12px !important;
  padding:0 !important;
  overflow:visible;
  fill:none !important;
  stroke:#087f5b !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

.newco-sector-link svg *{
  fill:none !important;
  stroke:#087f5b !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
  vector-effect:non-scaling-stroke;
}

.newco-sector-link span{
  display:block;
  margin:0;
  color:#111827 !important;
  font-size:16px;
  line-height:1.35;
  font-weight:700;
}

.newco-sector-link:hover,
.newco-sector-link:focus-visible{
  background:#f5faf8;
  transform:translateY(-1px);
  outline:none;
}

.newco-sector-link:focus-visible{
  box-shadow:0 0 0 2px rgba(8,127,91,.18);
}

@media(max-width:900px){
  .newco-sector-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px 12px;
  }
  .newco-sector-link{
    min-height:96px;
    padding:12px 8px;
  }
  .newco-sector-link:last-child{
    grid-column:1/-1;
  }
}

@media(max-width:430px){
  .newco-sectors-section{
    padding-top:30px;
    padding-bottom:32px;
  }
  .newco-sectors-section h2{
    margin-bottom:20px;
    font-size:24px;
  }
  .newco-sector-link svg{
    width:38px !important;
    height:38px !important;
    max-width:38px !important;
    max-height:38px !important;
    flex-basis:38px !important;
    margin-bottom:9px !important;
  }
  .newco-sector-link span{
    font-size:14px;
  }
}


/* Vacancy filter note v1.0.9 */
.newco-vacancy-filter-note{
  margin:0 0 18px;
  font-size:14px;
  font-weight:600;
  color:#4b5563;
}


/* Featured vacancy card polish v1.0.10 */
.newco-job-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
  align-items:stretch;
}

.newco-job-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  padding:22px;
  border:1px solid #e5e7eb;
  border-radius:10px;
  background:#fff;
  box-shadow:none;
}

.newco-job-card h3{
  margin:0 0 7px;
  font-size:20px;
  line-height:1.25;
  font-weight:700;
  color:#111827;
}

.newco-job-location{
  margin-bottom:12px;
}

.newco-job-location::before{
  content:"⌖";
  display:inline-block;
  margin-right:5px;
  color:#0b7a35;
}

.newco-tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:0 0 16px;
}

.newco-tags span{
  display:inline-block;
  padding:4px 9px;
  border-radius:999px;
  background:#edf8f1;
  color:#0b7a35;
  font-size:12px;
  line-height:1.2;
  font-weight:700;
}

.newco-job-summary{
  margin:0 0 16px;
  font-size:15px;
  line-height:1.55;
  color:#374151;
}

.newco-job-meta{
  font-size:13px;
  line-height:1.4;
  color:#6b7280;
}

.newco-pay{
  margin-top:8px;
  font-size:17px;
  line-height:1.25;
  font-weight:700;
  color:#111827;
}

.newco-job-foot{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:auto;
  padding-top:14px;
  font-size:12px;
  color:#6b7280;
}

.newco-job-card .newco-button{
  display:block;
  margin-top:14px;
  padding:11px 14px;
  border-radius:6px;
  background:#0b7a35;
  color:#fff !important;
  text-align:center;
  text-decoration:none !important;
  font-weight:700;
}

.newco-job-card .newco-button:hover,
.newco-job-card .newco-button:focus-visible{
  background:#08672d;
}

@media(max-width:900px){
  .newco-job-grid{
    grid-template-columns:1fr;
  }
}


/* Featured vacancy final polish v1.0.11 */
.newco-job-grid{
  gap:22px;
}

.newco-job-card{
  max-width:380px;
  padding:20px;
}

.newco-job-card h3{
  margin-bottom:6px;
}

.newco-job-location{
  display:flex;
  align-items:center;
  gap:5px;
  margin-bottom:10px;
}

.newco-job-location::before{
  content:none !important;
}

.newco-job-location svg{
  width:14px !important;
  height:14px !important;
  flex:0 0 14px;
  fill:none !important;
  stroke:#0b7a35 !important;
  stroke-width:1.8 !important;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.newco-tags{
  margin-bottom:14px;
}

.newco-job-summary{
  margin-bottom:13px;
  line-height:1.5;
}

.newco-pay{
  margin-top:6px;
}

.newco-job-foot{
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid #f0f1f2;
}

.newco-job-card .newco-button{
  margin-top:11px;
  padding:9px 13px;
  font-size:15px;
  line-height:1.25;
  border-radius:6px;
}

@media(min-width:901px){
  .newco-job-grid{
    justify-content:start;
  }
}

@media(max-width:900px){
  .newco-job-card{
    max-width:none;
  }
}


/* Why NewCo polish v1.0.12 */
.newco-why-section{
  padding-top:40px;
  padding-bottom:26px;
  border-top:1px solid #eceef0;
}

.newco-why-section h2{
  margin:0 0 26px;
  text-align:center;
  font-size:30px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:-.02em;
  color:#111827;
}

.newco-why-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  max-width:1120px;
  margin:0 auto;
}

.newco-why-item{
  padding:22px 24px 23px;
  text-align:center;
  border:1px solid #e5e7eb;
  border-radius:10px;
  background:#fff;
}

.newco-why-item svg{
  display:block !important;
  width:38px !important;
  height:38px !important;
  margin:0 auto 13px !important;
  fill:none !important;
  stroke:#087f5b !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

.newco-why-item svg *{
  fill:none !important;
  stroke:#087f5b !important;
}

.newco-why-item h3{
  margin:0 0 8px;
  font-size:17px;
  line-height:1.3;
  font-weight:700;
  color:#111827;
}

.newco-why-item p{
  margin:0;
  font-size:15px;
  line-height:1.5;
  color:#5f6875;
}

.newco-contact-band-polished{
  max-width:1120px;
  margin:8px auto 0;
  border-radius:8px;
  overflow:hidden;
}

.newco-contact-band-polished a{
  padding:19px 24px;
}

.newco-contact-band-polished strong{
  font-size:17px;
  line-height:1.25;
}

.newco-contact-band-polished span{
  margin-top:3px;
  font-size:13px;
  opacity:.9;
}

@media(max-width:800px){
  .newco-why-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .newco-why-item{
    padding:20px;
  }
}


/* NewCo footer v1.0.13 */
.newco-home-page footer.wp-block-template-part{
  display:none !important;
}

.newco-site-footer{
  max-width:1120px;
  margin:56px auto 0;
  padding:36px 0 0;
  border-top:1px solid #e6e8ea;
}

.newco-footer-main{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);
  gap:64px;
  padding-bottom:30px;
}

.newco-footer-brand img{
  display:block;
  width:170px;
  height:auto;
  margin:0 0 14px;
}

.newco-footer-brand p{
  margin:0 0 7px;
  font-size:14px;
  line-height:1.5;
  color:#5f6875;
}

.newco-footer-brand a{
  color:#0b7a35 !important;
  text-decoration:none !important;
  font-size:14px;
  font-weight:600;
}

.newco-footer-links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:34px;
}

.newco-footer-links div{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.newco-footer-links strong{
  margin-bottom:3px;
  font-size:14px;
  color:#111827;
}

.newco-footer-links a{
  color:#4b5563 !important;
  text-decoration:none !important;
  font-size:14px;
}

.newco-footer-links a:hover,
.newco-footer-brand a:hover{
  color:#0b7a35 !important;
}

.newco-footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:17px 0 22px;
  border-top:1px solid #eceef0;
  font-size:12px;
  color:#737b87;
}

@media(max-width:760px){
  .newco-site-footer{
    margin-top:38px;
    padding-top:28px;
  }

  .newco-footer-main{
    grid-template-columns:1fr;
    gap:28px;
  }

  .newco-footer-links{
    gap:24px;
  }

  .newco-footer-bottom{
    flex-direction:column;
    gap:5px;
  }
}


/* Footer polish v1.0.14 */
.newco-site-footer{
  margin-top:46px;
  padding-top:30px;
}

.newco-footer-main{
  grid-template-columns:minmax(0,1.5fr) minmax(0,.9fr);
  gap:44px;
  padding-bottom:22px;
}

.newco-footer-brand img{
  width:190px;
  max-width:190px;
  margin:0 0 10px !important;
  border:0 !important;
  border-bottom:0 !important;
  box-shadow:none !important;
  text-decoration:none !important;
}

.newco-footer-brand,
.newco-footer-brand *{
  text-decoration:none !important;
}

.newco-footer-brand::after,
.newco-footer-brand img::after{
  content:none !important;
  display:none !important;
}

.newco-footer-brand p{
  margin-bottom:5px;
}

.newco-footer-links{
  grid-template-columns:repeat(2,minmax(130px,1fr));
  gap:24px;
  justify-self:end;
}

.newco-footer-bottom{
  padding-top:13px;
  padding-bottom:16px;
}

@media(max-width:760px){
  .newco-footer-main{
    gap:24px;
  }

  .newco-footer-links{
    justify-self:stretch;
  }
}


/* Vacancy presentation fixes - v1.0.29 */
.newco-vacancy-details > .newco-detail-full{
  grid-column:1 / -1;
}
.newco-vacancy-requirements-copy p{
  margin:0 0 14px;
}
.newco-vacancy-requirements-copy p:last-child{
  margin-bottom:0;
}

/* Keep featured vacancy cards equal-height and align their footer/CTA. */
.newco-job-grid{
  grid-auto-rows:1fr;
  align-items:stretch;
}
.newco-job-card{
  height:100%;
  box-sizing:border-box;
}


/* Vacancy/card alignment fixes - v1.0.30 */
/* A blank white partner cell keeps an odd final vacancy detail aligned to the left
   without the previous grey empty-cell effect or stretching the item full width. */
.newco-vacancy-details > .newco-detail-placeholder{
  display:block;
  padding:0;
  min-height:1px;
  background:#fff;
}

/* The card body can vary in length, but the date/remaining row and CTA must share
   the same baseline across a desktop row of featured vacancies. */
.newco-job-card .newco-job-foot{
  margin-top:auto;
}
.newco-job-card .newco-button{
  flex:0 0 auto;
}

@media(max-width:800px){
  .newco-vacancy-details > .newco-detail-placeholder{
    display:none;
  }
}

/* Launch mobile header + footer fixes - v1.0.40 */
.newco-menu-toggle{display:none}

@media(max-width:600px){
  .newco-site-header{
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:10px!important;
    min-height:0!important;
    padding:8px 16px!important;
  }
  body.newco-home-page .newco-site-header{padding:8px 16px!important}

  .newco-header-logo,
  body.newco-home-page .newco-header-logo{
    display:block!important;
    justify-self:start!important;
    width:104px!important;
    max-width:104px!important;
    margin:0!important;
    padding:0!important;
  }
  .newco-header-logo img,
  body.newco-home-page .newco-header-logo img{
    display:block!important;
    width:104px!important;
    max-width:104px!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
  }

  .newco-menu-toggle{
    display:inline-flex!important;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    justify-self:end;
    gap:4px;
    width:44px;
    height:44px;
    margin:0;
    padding:0;
    border:1px solid #d9dee3;
    border-radius:7px;
    background:#fff;
    cursor:pointer;
  }
  .newco-menu-toggle span{display:block;width:21px;height:2px;background:#111827;border-radius:2px}
  .newco-menu-toggle:focus-visible{outline:3px solid rgba(11,122,53,.24);outline-offset:2px}

  .newco-primary-nav{
    display:none!important;
    grid-column:1 / -1!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:4px 0 6px!important;
    overflow:visible!important;
    border-top:1px solid #eceef0;
  }
  .newco-site-header.newco-menu-open .newco-primary-nav{display:grid!important}
  .newco-primary-nav a{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    padding:10px 2px!important;
    font-size:14px!important;
    text-align:left!important;
    white-space:normal!important;
    border-bottom:1px solid #f0f1f2;
  }
  .newco-primary-nav a:last-child{border-bottom:0}
  .newco-header-cta{display:none!important}

  .newco-site-footer{
    width:calc(100% - 32px)!important;
    max-width:calc(100% - 32px)!important;
    margin-left:16px!important;
    margin-right:16px!important;
    overflow:hidden;
  }
  .newco-footer-main{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    min-width:0!important;
  }
  .newco-footer-brand{min-width:0!important}
  .newco-footer-brand a{overflow-wrap:anywhere;word-break:break-word}
  .newco-footer-links{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
    min-width:0!important;
    gap:20px!important;
    justify-self:stretch!important;
  }
  .newco-footer-links>div{min-width:0!important}
  .newco-footer-bottom{width:100%!important;min-width:0!important}
}

/* Vacancy enquiry context - v1.0.41 */
.newco-form-context { margin: 0 0 16px; padding: 12px 14px; border: 1px solid #d9e4dc; border-radius: 8px; background: #f6faf7; }


/* NewCo branded 404 - v1.0.42 */
.newco-404-content{text-align:center;padding-top:58px;padding-bottom:64px}
.newco-404-content h2{margin-bottom:10px}
.newco-404-content>p{max-width:620px;margin:0 auto 24px}
.newco-404-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.newco-404-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 19px;border-radius:6px;font-weight:800;text-decoration:none!important}
.newco-404-primary{background:var(--ncg);color:#fff!important;border:2px solid var(--ncg)}
.newco-404-secondary{background:#fff;color:var(--ncgd)!important;border:2px solid var(--ncg)}
@media(max-width:520px){.newco-404-content{padding-top:38px;padding-bottom:44px}.newco-404-actions{flex-direction:column}.newco-404-actions a{width:100%}}


/* NewCo mobile featured-vacancy carousel v1.0.48 */
.newco-carousel-hint{display:none}
@media(max-width:900px){
  .newco-featured-carousel{
    display:flex!important;
    width:100%!important;
    gap:14px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:2px 18px 12px 0!important;
    margin-right:-18px!important;
    scroll-snap-type:x mandatory;
    scroll-padding-left:0;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-inline:contain;
    scrollbar-width:none;
  }
  .newco-featured-carousel::-webkit-scrollbar{display:none}
  .newco-featured-carousel>.newco-job-card{
    flex:0 0 calc(100% - 34px)!important;
    width:calc(100% - 34px)!important;
    min-width:0!important;
    box-sizing:border-box!important;
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
  .newco-carousel-hint{
    display:block;
    margin:7px 0 0;
    color:var(--ncm);
    font-size:12px;
    font-weight:700;
    text-align:right;
  }
}


/* Footer social links - v1.0.49 */
.newco-footer-social{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:15px;
}
.newco-footer-social a{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border:1px solid rgba(11,122,53,.24);
  border-radius:50%;
  background:#fff;
  color:var(--ncg)!important;
  text-decoration:none!important;
  transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease;
}
.newco-footer-social a:hover,
.newco-footer-social a:focus-visible{
  background:var(--ncg);
  border-color:var(--ncg);
  color:#fff!important;
  transform:translateY(-1px);
}
.newco-footer-social a:focus-visible{
  outline:3px solid rgba(11,122,53,.22);
  outline-offset:3px;
}
.newco-footer-social svg{
  width:19px;
  height:19px;
  fill:currentColor;
}
@media(max-width:760px){
  .newco-footer-social{justify-content:center;margin-top:17px}
  .newco-footer-brand{text-align:center}
  .newco-footer-brand img{margin-left:auto!important;margin-right:auto!important}
}

/* Footer balance + contact CTA symmetry - v1.0.50 */
.newco-site-footer>.newco-footer-social{
  justify-content:center;
  margin:22px auto 6px;
}
.newco-contact-band-polished{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px!important;
  background:transparent!important;
  padding:0!important;
}
.newco-contact-band-polished .newco-contact-action{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 24px;
  align-items:center;
  gap:12px;
  min-height:92px;
  padding:18px 20px!important;
  border-radius:8px;
  background:var(--ncg)!important;
  color:#fff!important;
  text-decoration:none!important;
  box-sizing:border-box;
}
.newco-contact-band-polished .newco-contact-action:hover,
.newco-contact-band-polished .newco-contact-action:focus-visible{
  background:var(--ncgd)!important;
}
.newco-contact-action-icon{
  display:flex;
  align-items:center;
  justify-content:center;
}
.newco-contact-action-icon svg{
  width:30px;
  height:30px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.newco-contact-action-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.newco-contact-action-copy strong{font-size:18px;line-height:1.2}
.newco-contact-action-copy>span{font-size:14px;line-height:1.35;opacity:.9}
.newco-contact-action-arrow{font-size:24px;font-weight:800;text-align:right}
@media(max-width:700px){
  .newco-contact-band-polished{grid-template-columns:1fr}
  .newco-contact-band-polished .newco-contact-action{min-height:86px}
}

/* Reset inherited span/divider styling inside the v1.0.50 CTA buttons. */
.newco-contact-band-polished .newco-contact-action{border:0!important}
.newco-contact-band-polished .newco-contact-action-icon,
.newco-contact-band-polished .newco-contact-action-copy,
.newco-contact-band-polished .newco-contact-action-arrow{
  margin-top:0!important;
  opacity:1!important;
}
.newco-contact-band-polished .newco-contact-action-icon{font-size:inherit!important}
.newco-contact-band-polished .newco-contact-action-arrow{font-size:24px!important}
@media(max-width:900px){
  .newco-contact-band-polished .newco-contact-action+.newco-contact-action{border-top:0!important}
}
