:root{--ink:#0B102E;--navy:#0B155A;--navy2:#1A256A;--paper:#F7F4EE;--white:#fff;--muted:#667085;--line:rgba(11,16,46,.12);--red:#6A4DF5;--coral:#9C8BFF;--cyan:#65C8C0;--blue:#4458D8;--shadow:0 24px 80px rgba(11,16,46,.12);--radius:24px;--max:1240px}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.5;overflow-x:hidden} a{text-decoration:none;color:inherit} img{max-width:100%;display:block} button{font:inherit}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.19em;font-weight:800;color:var(--red);display:flex;align-items:center;gap:9px}.eyebrow:before{content:"";width:24px;height:2px;background:currentColor;border-radius:2px}.display{font-size:clamp(48px,7vw,96px);line-height:.92;letter-spacing:-.06em;margin:16px 0 22px;font-weight:800}.display .soft{font-weight:400;color:#a3acc0}.lead{font-size:clamp(18px,2vw,23px);color:#5d687d;max-width:760px;line-height:1.55}.btns{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:999px;border:1px solid var(--line);font-weight:750;transition:.25s ease;background:#fff}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(11,16,46,.12)}.btn.primary{background:var(--navy);color:white;border-color:var(--navy)}.btn.red{background:var(--red);color:#fff;border-color:var(--red)}.btn.ghost-dark{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.2)}
.site-head{position:fixed;z-index:1000;top:0;left:0;width:100%;transition:.25s ease}.site-head.scrolled{background:rgba(247,248,252,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.head-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.logo img{width:220px;height:auto}.nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:700}.nav a{position:relative}.nav a:not(.portal):after{content:"";position:absolute;height:1px;width:0;left:0;bottom:-8px;background:var(--red);transition:.25s}.nav a:hover:after,.nav a.active:after{width:100%}.portal{border:1px solid var(--line);padding:10px 15px;border-radius:999px;background:#fff}.hamb{display:none;background:none;border:0;padding:8px}.hamb span{display:block;width:24px;height:2px;background:var(--ink);margin:5px}
.hero{min-height:100vh;display:flex;align-items:center;position:relative;padding:150px 0 90px;overflow:hidden;background:radial-gradient(circle at 80% 18%,rgba(101,200,192,.16),transparent 26%),radial-gradient(circle at 88% 76%,rgba(106,77,245,.11),transparent 24%),linear-gradient(180deg,#FBF9F4 0%,#F7F4EE 100%)}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(11,21,90,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(11,21,90,.04) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 86%)}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center;position:relative;z-index:1}.hero-copy{max-width:760px}.hero-copy .lead{max-width:690px}.hero .btns{margin-top:34px}.signal-stage{height:540px;position:relative;perspective:1200px}.signal-card{position:absolute;inset:30px 0 10px 50px;border-radius:34px;background:linear-gradient(160deg,#0a1431,#122453);box-shadow:0 40px 90px rgba(11,16,46,.32);overflow:hidden;transform:rotateY(-10deg) rotateX(4deg)}.signal-card:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:34px 34px}.signal-glow{position:absolute;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(101,200,192,.34),transparent 68%);top:-100px;right:-100px}.pulse-ring{position:absolute;border:1px solid rgba(101,200,192,.34);border-radius:50%;left:50%;top:47%;transform:translate(-50%,-50%);animation:pulse 3s infinite}.pulse-ring.r1{width:130px;height:130px}.pulse-ring.r2{width:220px;height:220px;animation-delay:.65s}.pulse-ring.r3{width:310px;height:310px;animation-delay:1.3s}@keyframes pulse{0%,100%{opacity:.25;transform:translate(-50%,-50%) scale(.92)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.02)}}.core{position:absolute;width:78px;height:78px;border-radius:24px;left:50%;top:47%;transform:translate(-50%,-50%) rotate(45deg);background:linear-gradient(135deg,var(--cyan),#7A5CF4 55%,var(--red));box-shadow:0 0 50px rgba(101,200,192,.35)}.signal-label{position:absolute;left:30px;top:26px;color:#fff}.signal-label b{display:block;font-size:13px;letter-spacing:.15em;text-transform:uppercase}.signal-label span{display:block;color:#9eb1d6;font-size:12px;margin-top:5px}.chip{position:absolute;padding:10px 14px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.06);backdrop-filter:blur(10px);color:#fff;font-weight:700;font-size:12px;animation:float 5s ease-in-out infinite}.c1{top:120px;left:28px}.c2{top:178px;right:28px;animation-delay:.6s}.c3{bottom:138px;left:34px;animation-delay:1.2s}.c4{bottom:84px;right:35px;animation-delay:1.8s}.c5{top:52%;right:4px;animation-delay:2.4s}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}.scan-line{position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);top:15%;box-shadow:0 0 20px var(--cyan);animation:scan 5s linear infinite}@keyframes scan{0%{top:15%;opacity:0}10%{opacity:1}90%{opacity:1}100%{top:88%;opacity:0}}
section{padding:110px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}.section-head h2{font-size:clamp(40px,5vw,68px);letter-spacing:-.05em;line-height:1;margin:12px 0 0}.section-head p{max-width:520px;color:var(--muted);font-size:18px}.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;min-height:270px;position:relative;overflow:hidden;transition:.3s}.feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.feature-card .num{font-size:12px;color:#9aa4b8;font-weight:800}.feature-card h3{font-size:26px;letter-spacing:-.03em;margin:55px 0 10px}.feature-card p{color:var(--muted);margin:0;max-width:380px}.feature-card .line{position:absolute;height:2px;width:80px;top:30px;right:30px;background:linear-gradient(90deg,var(--red),var(--cyan));border-radius:2px}.pathways{display:grid;grid-template-columns:1fr 1fr;gap:18px}.path-card{min-height:510px;border-radius:32px;padding:46px;position:relative;overflow:hidden;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;background:var(--navy)}.path-card.talent{background:#fff;color:var(--ink);border:1px solid var(--line)}.path-card:before{content:"";position:absolute;width:380px;height:380px;border-radius:50%;right:-120px;top:-120px;border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 52px rgba(255,255,255,.025),0 0 0 104px rgba(255,255,255,.02)}.path-card.talent:before{border-color:rgba(11,16,46,.12);box-shadow:0 0 0 52px rgba(11,16,46,.025),0 0 0 104px rgba(11,16,46,.02)}.path-card h3{font-size:clamp(40px,5vw,65px);letter-spacing:-.05em;line-height:.98;margin:10px 0 18px;max-width:560px}.path-card p{max-width:560px;color:#bec8df;font-size:18px}.path-card.talent p{color:var(--muted)}
.services{background:#0A1248;color:#fff;position:relative;overflow:hidden}.services:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 30%,rgba(101,200,192,.1),transparent 30%),radial-gradient(circle at 20% 80%,rgba(106,77,245,.12),transparent 28%);pointer-events:none}.services .section-head p{color:#9faccc}.service-list{border-top:1px solid rgba(255,255,255,.13);position:relative;z-index:1}.service-row{display:grid;grid-template-columns:72px 1.2fr 1fr 36px;gap:22px;align-items:center;padding:26px 0;border-bottom:1px solid rgba(255,255,255,.13);transition:.25s}.service-row:hover{padding-left:12px}.service-row .idx{color:#6d7da4;font-size:13px}.service-row h3{font-size:25px;margin:0;letter-spacing:-.03em}.service-row p{margin:0;color:#99a8c9}.service-row .arr{font-size:26px;color:var(--cyan)}
.ticker{padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;background:#fff}.ticker-track{display:flex;gap:44px;width:max-content;animation:ticker 26s linear infinite}.ticker span{font-size:20px;font-weight:800;color:#96a0b4;white-space:nowrap}.ticker i{font-style:normal;color:var(--red)}@keyframes ticker{to{transform:translateX(-50%)}}
.stats{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:26px;overflow:hidden;background:#fff}.stat{padding:32px 24px;border-right:1px solid var(--line)}.stat:last-child{border-right:0}.stat b{display:block;font-size:36px;letter-spacing:-.05em;color:var(--navy)}.stat span{font-size:13px;color:var(--muted);font-weight:700}.why-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.why-copy h2{font-size:clamp(44px,6vw,78px);line-height:.95;letter-spacing:-.055em;margin:12px 0 24px}.why-copy p{font-size:18px;color:var(--muted)}.why-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.why-item{padding:20px;border-radius:18px;background:#fff;border:1px solid var(--line);font-weight:750}.why-item:before{content:"✦";color:var(--red);margin-right:10px}.testimonial{margin-top:70px;padding:48px;border-radius:30px;background:linear-gradient(135deg,#fff,#F2EFFB);border:1px solid var(--line);position:relative}.testimonial .quote{font-size:clamp(28px,3vw,42px);letter-spacing:-.035em;line-height:1.2;max-width:980px}.testimonial .who{margin-top:25px;color:var(--muted);font-weight:700}.brands{display:flex;gap:34px;flex-wrap:wrap;margin-top:34px;color:#8993a9;font-size:20px;font-weight:900;letter-spacing:.04em}
.insights-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:18px}.article{border-radius:26px;background:#fff;border:1px solid var(--line);padding:28px;min-height:330px;display:flex;flex-direction:column;justify-content:space-between;transition:.3s}.article:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.article:first-child{background:var(--navy);color:#fff}.article .meta{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#929db3}.article:first-child .meta{color:#8fa2ca}.article h3{font-size:26px;line-height:1.12;letter-spacing:-.03em}.article a{font-weight:800;font-size:14px}.cta{background:linear-gradient(120deg,#e62d42,#ff6e58);color:#fff}.cta-inner{display:flex;justify-content:space-between;align-items:end;gap:40px}.cta h2{font-size:clamp(48px,6vw,82px);line-height:.95;letter-spacing:-.055em;margin:10px 0 0;max-width:800px}.footer{background:#060d1f;color:#fff;padding:70px 0 34px}.foot-grid{display:grid;grid-template-columns:1.2fr .7fr .8fr;gap:60px}.footer .brand img{width:230px;filter:brightness(0) invert(1)}.footer p,.footer address{color:#95a3c1;font-style:normal;line-height:1.8}.footer h4{font-size:13px;text-transform:uppercase;letter-spacing:.15em;color:#7585a8}.foot-links a{display:block;margin:10px 0;color:#c1cae0}.copyright{margin-top:46px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;color:#7785a6;font-size:13px}
.subhero{padding:170px 0 90px;background:radial-gradient(circle at 90% 20%,rgba(101,200,192,.13),transparent 30%),#F9F7F2}.subhero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end}.subhero h1{font-size:clamp(58px,8vw,102px);line-height:.9;letter-spacing:-.06em;margin:16px 0 22px}.subhero-art{height:370px;border-radius:30px;background:#0B155A;position:relative;overflow:hidden}.subhero-art .orbit{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.15);left:50%;top:50%;transform:translate(-50%,-50%)}.subhero-art .o1{width:130px;height:130px}.subhero-art .o2{width:240px;height:240px}.subhero-art .o3{width:350px;height:350px}.subhero-art .dot{position:absolute;width:18px;height:18px;border-radius:50%;background:var(--red);left:calc(50% - 9px);top:calc(50% - 9px);box-shadow:0 0 35px rgba(106,77,245,.7)}.section-band{padding:34px 0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.band-inner{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-weight:800;color:#78849b}.process{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.step{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;min-height:220px}.step b{color:var(--red);font-size:13px}.step h3{font-size:22px;margin:55px 0 8px}.step p{font-size:14px;color:var(--muted)}.domain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.domain{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;min-height:200px;transition:.25s}.domain:hover{background:var(--navy);color:#fff;transform:translateY(-4px)}.domain h3{font-size:24px;letter-spacing:-.03em;margin:45px 0 8px}.domain p{color:var(--muted)}.domain:hover p{color:#a9b6d3}.belief-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:start}.belief-grid h2{font-size:clamp(42px,6vw,72px);line-height:.98;letter-spacing:-.05em;margin-top:0}.values{display:grid;grid-template-columns:1fr 1fr;gap:14px}.value{padding:26px;background:#fff;border:1px solid var(--line);border-radius:20px}.value h3{margin:0 0 10px}.value p{margin:0;color:var(--muted)}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.resource{padding:28px;border-radius:22px;background:#fff;border:1px solid var(--line)}.resource h3{font-size:25px}.resource p{color:var(--muted)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.on{opacity:1;transform:none}
@media(max-width:980px){.nav{display:none;position:absolute;top:82px;left:20px;right:20px;background:rgba(255,255,255,.98);padding:22px;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start}.nav.open{display:flex}.hamb{display:block}.hero-grid,.subhero-grid,.why-grid,.belief-grid{grid-template-columns:1fr}.signal-stage{height:430px}.signal-card{inset:10px}.cards-3,.domain-grid,.resource-grid{grid-template-columns:1fr 1fr}.stats{grid-template-columns:repeat(2,1fr)}.stat{border-bottom:1px solid var(--line)}.process{grid-template-columns:1fr 1fr}.insights-grid{grid-template-columns:1fr 1fr}.article:first-child{grid-column:span 2}.foot-grid{grid-template-columns:1fr 1fr}.service-row{grid-template-columns:50px 1fr 30px}.service-row p{grid-column:2 / 3}.cta-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.wrap{width:min(calc(100% - 28px),var(--max))}.logo img{width:190px}.hero{padding-top:125px}.display{font-size:51px}.signal-stage{height:360px}.chip{font-size:10px}.pathways,.cards-3,.domain-grid,.resource-grid,.values,.insights-grid,.foot-grid,.process,.why-list{grid-template-columns:1fr}.path-card{min-height:440px;padding:30px}.article:first-child{grid-column:auto}.stats{grid-template-columns:1fr 1fr}.section-head{align-items:flex-start;flex-direction:column}.service-row{grid-template-columns:34px 1fr 24px}.service-row p{display:none}.cta{padding:80px 0}.footer{padding-top:55px}.copyright{flex-direction:column;gap:8px}.subhero{padding-top:135px}.subhero-art{height:280px}section{padding:82px 0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* =========================
   Northernbridge Staffing — V2 polish
   ========================= */
:root{
  --beige:#e9dfcf;
  --beige-soft:#f6f0e6;
  --beige-deep:#d7c8b2;
}
html{background:var(--beige-soft)}
body{background:var(--beige-soft)}
body::before{
  content:"";
  position:fixed;
  inset:-4%;
  z-index:0;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 18px 18px,rgba(106,77,245,.28) 0 2px,transparent 2.7px),
    radial-gradient(circle at 96px 58px,rgba(11,21,90,.22) 0 1.8px,transparent 2.5px),
    linear-gradient(31deg,transparent 49.55%,rgba(11,21,90,.055) 49.8%,rgba(11,21,90,.055) 50.2%,transparent 50.45%),
    linear-gradient(149deg,transparent 49.55%,rgba(106,77,245,.04) 49.8%,rgba(106,77,245,.04) 50.2%,transparent 50.45%);
  background-size:160px 122px,160px 122px,160px 122px,160px 122px;
  opacity:.10;
  transform:scale(1);
  transform-origin:center;
  animation:networkHeartbeat 5.4s ease-in-out infinite;
}
body>*{position:relative;z-index:1}
@keyframes networkHeartbeat{
  0%,18%,100%{opacity:.085;transform:scale(1)}
  4%{opacity:.155;transform:scale(1.006)}
  8%{opacity:.09;transform:scale(1.001)}
  12%{opacity:.14;transform:scale(1.004)}
  16%{opacity:.085;transform:scale(1)}
}
.site-head.scrolled{background:rgba(248,244,236,.91)}
.logo{display:flex;align-items:center;flex:0 0 auto}
.logo img{width:92px;max-height:72px;object-fit:contain}
.hero{
  background:
    radial-gradient(circle at 80% 18%,rgba(101,200,192,.14),transparent 26%),
    radial-gradient(circle at 88% 76%,rgba(106,77,245,.10),transparent 24%),
    linear-gradient(180deg,#fbf7ef 0%,#f5eddf 50%,#F7F4EE 100%);
}
.hero:after,.subhero:after{
  content:"";
  position:absolute;
  inset:-5%;
  pointer-events:none;
  z-index:0;
  background-image:
    radial-gradient(circle at 16px 20px,rgba(106,77,245,.38) 0 2px,transparent 2.6px),
    radial-gradient(circle at 106px 72px,rgba(11,21,90,.30) 0 1.7px,transparent 2.3px),
    linear-gradient(28deg,transparent 49.65%,rgba(11,21,90,.07) 49.85%,rgba(11,21,90,.07) 50.15%,transparent 50.35%),
    linear-gradient(151deg,transparent 49.65%,rgba(106,77,245,.055) 49.85%,rgba(106,77,245,.055) 50.15%,transparent 50.35%);
  background-size:180px 136px,180px 136px,180px 136px,180px 136px;
  opacity:.12;
  animation:heroNodeBeat 5.4s ease-in-out infinite;
}
@keyframes heroNodeBeat{
  0%,18%,100%{opacity:.10;filter:brightness(1)}
  4%{opacity:.21;filter:brightness(1.12)}
  8%{opacity:.105;filter:brightness(1)}
  12%{opacity:.18;filter:brightness(1.08)}
  16%{opacity:.10;filter:brightness(1)}
}
.hero-grid,.subhero-grid{position:relative;z-index:1}
.subhero{position:relative;overflow:hidden;background:radial-gradient(circle at 90% 20%,rgba(101,200,192,.11),transparent 30%),linear-gradient(180deg,#fbf7ef,#f5efe5)}
.ticker{background:var(--beige)}
.path-card.talent{background:linear-gradient(145deg,#fffaf2,var(--beige-soft));border-color:rgba(84,67,45,.12)}
.testimonial{background:linear-gradient(135deg,#fff,var(--beige-soft));border-color:rgba(84,67,45,.12)}

/* The entire Talent Signal is an interactive destination. */
.signal-link{display:block;color:inherit;cursor:pointer;text-decoration:none;outline:none}
.signal-link .signal-card{transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease;border:1px solid rgba(255,255,255,.07)}
.signal-link:hover .signal-card,.signal-link:focus-visible .signal-card{
  transform:rotateY(-7deg) rotateX(3deg) scale(1.012);
  box-shadow:0 46px 100px rgba(11,16,46,.38),0 0 0 1px rgba(101,200,192,.18);
  border-color:rgba(101,200,192,.22)
}
.cursor-node{
  position:absolute;
  left:50%;top:47%;
  width:14px;height:14px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 5px rgba(101,200,192,.13),0 0 26px 8px rgba(101,200,192,.56),0 0 42px 16px rgba(106,77,245,.20);
  transform:translate(-50%,-50%) scale(.6);
  opacity:0;
  pointer-events:none;
  z-index:20;
  transition:opacity .16s ease,transform .16s ease;
}
.cursor-node::after{
  content:"";
  position:absolute;
  inset:-9px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:50%;
  animation:trackerPulse 1.25s ease-out infinite;
}
.signal-card.tracking .cursor-node{opacity:1;transform:translate(-50%,-50%) scale(1)}
@keyframes trackerPulse{0%{transform:scale(.65);opacity:.85}100%{transform:scale(1.55);opacity:0}}

/* CTA contrast fix — the white action was inheriting white text. */
.cta .btn:not(.ghost-dark){background:#fff;color:var(--navy)!important;border-color:#fff}
.cta .btn:not(.ghost-dark):hover{background:var(--beige-soft);border-color:var(--beige-soft)}

/* Supplied logo remains legible against the dark footer. */
.footer .brand img{
  width:165px;
  max-height:none;
  filter:none;
  background:var(--beige-soft);
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  padding:11px 14px;
}

@media(max-width:640px){
  .logo img{width:82px;max-height:64px}
  .cursor-node{display:none}
  .signal-link:hover .signal-card{transform:rotateY(-10deg) rotateX(4deg)}
}
@media(prefers-reduced-motion:reduce){body::before,.hero:after,.subhero:after,.cursor-node::after{animation:none!important}}

/* =========================
   Northernbridge Staffing — V4 kinetic live signal clouds
   ========================= */

/* Requested surface adjustments from V3 remain locked. */
.ticker{background:#fff!important}
.path-card.talent{
  background:#fff!important;
  border-color:rgba(11,16,46,.12)!important;
  box-shadow:0 22px 55px rgba(11,16,46,.06)
}
.cta .btn.job-cta{
  background:var(--blue)!important;
  color:#fff!important;
  border-color:var(--blue)!important;
  box-shadow:0 14px 34px rgba(68,88,216,.28)
}
.cta .btn.job-cta:hover{
  background:#384BC3!important;
  border-color:#384BC3!important;
  box-shadow:0 18px 38px rgba(68,88,216,.34)
}

/* One signal language on every page. */
.trend-signal{isolation:isolate}
.signal-card,
.subhero-art.trend-signal{
  background:
    radial-gradient(circle at 76% 20%,rgba(91,207,236,.16),transparent 28%),
    radial-gradient(circle at 25% 82%,rgba(106,77,245,.095),transparent 25%),
    linear-gradient(158deg,#08142f 0%,#102451 54%,#0b1a3a 100%)!important;
  box-shadow:0 34px 74px rgba(11,16,46,.23),inset 0 0 0 1px rgba(255,255,255,.045)
}
.subhero-art.trend-signal:before,
.signal-card:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background-image:
    linear-gradient(rgba(255,255,255,.042) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.042) 1px,transparent 1px);
  background-size:31px 31px;
  pointer-events:none
}
.signal-card .pulse-ring,.subhero-art .pulse-ring{
  z-index:2;
  border-color:rgba(126,228,255,.19);
  opacity:.58
}
.signal-card .core,.subhero-art .core{
  z-index:3;
  opacity:.64;
  filter:saturate(.82);
  box-shadow:0 0 48px rgba(101,200,192,.22)
}
.signal-card .scan-line,.subhero-art .scan-line{z-index:4;opacity:.58}
.subhero-art .pulse-ring{left:50%;top:50%}
.subhero-art .core{left:50%;top:50%}

.signal-card .signal-label,.subhero-art .signal-label{z-index:18}
.signal-card .signal-label span,.subhero-art .signal-label span{max-width:250px}
.subhero-art .signal-label.compact{left:24px;top:22px}
.subhero-art .signal-label.compact b{font-size:12px}
.subhero-art .signal-label.compact span{font-size:11px;color:#a9b9d8}

/* Collision-aware cloud area. JS owns the anchors; CSS owns the subtle movement. */
.trend-cloud{
  position:absolute;
  inset:74px 22px 52px;
  z-index:8;
  overflow:hidden;
  pointer-events:none;
  contain:layout paint;
}
.subhero-art .trend-cloud{inset:66px 18px 43px}
.trend-cloud:before{
  content:"";
  position:absolute;
  inset:9% 11%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(126,228,255,.045),transparent 64%);
  pointer-events:none
}
.trend-word-anchor{
  position:absolute;
  display:block;
  z-index:2;
  opacity:0;
  will-change:left,top,opacity;
  transition:opacity .42s ease,filter .42s ease;
  filter:blur(2px)
}
.trend-cloud.ready .trend-word-anchor{
  opacity:1;
  filter:none
}
.trend-cloud.reshuffling .trend-word-anchor{
  opacity:.035!important;
  filter:blur(2px)
}
.trend-word{
  --x1:2px;--y1:2px;--x2:-2px;--y2:-2px;--dur:12s;--delay:-2s;
  display:block;
  max-width:none;
  line-height:1.04;
  font-weight:780;
  letter-spacing:-.026em;
  white-space:nowrap;
  transform:translate3d(0,0,0);
  transform-origin:center;
  text-shadow:0 5px 18px rgba(0,0,0,.24);
  will-change:transform;
  animation:signalWordDrift var(--dur) ease-in-out var(--delay) infinite alternate
}
.trend-word.primary-word{font-weight:900;letter-spacing:-.035em}
.trend-word.tone-white{color:#f7f9ff;text-shadow:0 5px 22px rgba(255,255,255,.08)}
.trend-word.tone-cyan{color:#8CDDD3;text-shadow:0 5px 22px rgba(101,200,192,.15)}
.trend-word.tone-red{color:#A997FF;text-shadow:0 5px 22px rgba(106,77,245,.13)}
.trend-word.tone-beige{color:#E8DCC6;text-shadow:0 5px 22px rgba(234,211,178,.1)}
.trend-word.tone-blue-soft{color:#B9C3EB}
.trend-word.tone-cyan-soft{color:#A7D8D2}
.trend-word.tone-beige-soft{color:#D9D0E5}
@keyframes signalWordDrift{
  0%{transform:translate3d(var(--x1),var(--y1),0)}
  50%{transform:translate3d(0,0,0)}
  100%{transform:translate3d(var(--x2),var(--y2),0)}
}

.trend-live{
  position:absolute;
  right:22px;
  bottom:18px;
  z-index:19;
  display:flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:999px;
  background:rgba(4,11,30,.42);
  backdrop-filter:blur(10px);
  color:#a8b7d4;
  font-size:9px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase
}
.trend-live i{
  width:6px;height:6px;border-radius:50%;
  background:#8edcf0;
  box-shadow:0 0 0 4px rgba(101,200,192,.07),0 0 14px rgba(101,200,192,.52);
  animation:liveBlink 2.2s ease-in-out infinite
}
@keyframes liveBlink{0%,100%{opacity:.44}50%{opacity:1}}

/* Cursor tracker remains above the signal but below the fixed label. */
.trend-signal .cursor-node{z-index:22}
.subhero-art.tracking .cursor-node,.signal-card.tracking .cursor-node{
  opacity:1;
  transform:translate(-50%,-50%) scale(1)
}

@media(max-width:980px){
  .trend-cloud{inset:70px 15px 47px}
  .subhero-art .trend-cloud{inset:63px 14px 40px}
}
@media(max-width:640px){
  .trend-cloud{inset:66px 11px 42px}
  .subhero-art .trend-cloud{inset:59px 10px 37px}
  .trend-live{right:13px;bottom:11px;font-size:8px;padding:6px 8px}
  .signal-card .core,.subhero-art .core{opacity:.48}
}
@media(prefers-reduced-motion:reduce){
  .trend-live i,.trend-word{animation:none!important}
  .trend-word{transform:none!important}
}

/* =========================
   Northernbridge Staffing — V5 refinements
   ========================= */

/* Keep the two-line hero typography optically separated at every viewport. */
.hero .display{
  line-height:.94;
  text-wrap:balance;
}
.hero .display .soft{
  display:block;
  line-height:1.02;
  margin-top:.14em;
  letter-spacing:-.052em;
}

/* Requested CTA correction: use brand navy, not generic UI blue. */
.cta .btn.job-cta{
  background:var(--navy)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.22)!important;
  box-shadow:0 14px 34px rgba(11,16,46,.24)!important;
}
.cta .btn.job-cta:hover{
  background:var(--navy2)!important;
  border-color:rgba(255,255,255,.34)!important;
  box-shadow:0 18px 40px rgba(11,16,46,.32)!important;
}

/* Weekly source-driven insight cards. */
.insights-section{background:#F0EEF7}
.insights-note{margin:18px 0 0;color:#758198;font-size:15px;font-weight:650}
.insights-grid{align-items:stretch}
.article{
  padding:0!important;
  min-height:430px;
  overflow:hidden;
  position:relative;
  background:#fff;
}
.article:first-child{background:var(--navy);color:#fff}
.article-media{
  height:182px;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 16%,rgba(101,200,192,.26),transparent 36%),
    linear-gradient(145deg,#152650,#0B155A);
  border-bottom:1px solid rgba(11,16,46,.08)
}
.article-media:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 48%,rgba(7,15,35,.28));
  pointer-events:none
}
.article-media img{
  width:100%;height:100%;object-fit:cover;
  opacity:0;
  transform:scale(1.015);
  transition:opacity .45s ease,transform .5s ease
}
.article.has-image .article-media img{opacity:1}
.article:hover .article-media img{transform:scale(1.045)}
.source-pill{
  position:absolute;z-index:2;left:18px;bottom:16px;
  padding:7px 10px;border-radius:999px;
  background:rgba(11,16,46,.78);backdrop-filter:blur(10px);
  color:#fff;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;
  max-width:calc(100% - 36px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.article-body{
  min-height:248px;padding:24px 28px 28px;
  display:flex;flex-direction:column;justify-content:space-between;gap:24px
}
.article h3{margin:0 0 26px;font-size:25px;line-height:1.14;letter-spacing:-.035em}
.article .meta{line-height:1.4}
.article:first-child .meta{color:#9eb0d3}
.article a{display:inline-flex;align-items:center;gap:7px}
.article a:hover{text-decoration:underline;text-underline-offset:4px}
.insights-refresh{
  margin-top:18px;display:flex;align-items:center;gap:9px;
  color:#748199;font-size:10px;letter-spacing:.12em;text-transform:uppercase
}
.insights-refresh>span{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 0 rgba(106,77,245,.35);animation:weeklyPulse 2.6s ease-out infinite}
.insights-refresh b{color:#5f6c83}
.insights-refresh small{font-size:10px;letter-spacing:.06em;text-transform:none;color:#9aa5b8}
@keyframes weeklyPulse{0%{box-shadow:0 0 0 0 rgba(106,77,245,.35)}70%{box-shadow:0 0 0 8px rgba(106,77,245,0)}100%{box-shadow:0 0 0 0 rgba(106,77,245,0)}}

@media(max-width:640px){
  .hero .display{font-size:48px;line-height:.96;letter-spacing:-.055em}
  .hero .display .soft{margin-top:.16em;line-height:1.03}
  .article{min-height:400px}
  .article-media{height:170px}
  .article-body{min-height:225px;padding:22px 24px 25px}
}
@media(prefers-reduced-motion:reduce){.insights-refresh>span,.article-media img{animation:none!important;transition:none!important}}


/* =========================
   Northernbridge Staffing — V5.3 logo update
   New horizontal Northernbridge logo; all other site styling unchanged.
   ========================= */
.logo img{
  width:220px!important;
  max-height:72px!important;
  height:auto!important;
  object-fit:contain!important;
}
.footer .brand img{
  width:235px!important;
  max-height:none!important;
  height:auto!important;
  object-fit:contain!important;
}
@media(max-width:640px){
  .logo img{
    width:185px!important;
    max-height:62px!important;
  }
  .footer .brand img{
    width:210px!important;
  }
}


/* =========================
   Northernbridge Staffing — V6.3 hero refinement
   Opening CTAs removed; remaining copy optically rebalanced.
   ========================= */
@media(min-width:981px){
  .hero-copy{
    max-width:790px;
    transform:translateY(18px);
  }
  .hero-copy .lead{
    max-width:760px;
    margin-top:30px;
    margin-bottom:0;
  }
}
@media(max-width:980px){
  .hero-copy{
    transform:none;
  }
  .hero-copy .lead{
    margin-top:24px;
    margin-bottom:0;
  }
}


/* =========================
   Northernbridge Staffing — brand layer
   Palette: logo navy + violet, supported by sea-glass teal and warm ivory.
   Layout and interaction model remain unchanged.
   ========================= */
:root{
  --ink:#0B102E;
  --navy:#0B155A;
  --navy2:#1A256A;
  --paper:#F8F5EE;
  --muted:#666A7C;
  --line:rgba(11,16,46,.12);
  --red:#6A4DF5;
  --coral:#9C8BFF;
  --cyan:#65C8C0;
  --blue:#4458D8;
  --beige:#E9E5F2;
  --beige-soft:#F8F5EE;
  --beige-deep:#D8D0EA;
}
.site-head.scrolled{background:rgba(248,245,238,.92)}
.logo img{width:270px!important;max-height:62px!important;height:auto!important;object-fit:contain!important}
.footer .brand img{width:310px!important;max-height:none!important;height:auto!important;object-fit:contain!important;background:#fff;border-color:rgba(255,255,255,.18);padding:13px 16px}
.hero{background:radial-gradient(circle at 80% 18%,rgba(101,200,192,.15),transparent 26%),radial-gradient(circle at 88% 76%,rgba(106,77,245,.12),transparent 24%),linear-gradient(180deg,#FBF9F4 0%,#F5F1EA 52%,#F3F1F8 100%)}
.services{background:#0A1248}
.signal-card{background:linear-gradient(160deg,#09103D,#16246A)}
.subhero-art{background:#0B155A}
.insights-section{background:#F0EEF7}
.article:first-child{background:#0B155A}
.display .soft{color:#A8A6BA}
@media(max-width:640px){
  .logo img{width:210px!important;max-height:54px!important}
  .footer .brand img{width:250px!important}
}


/* =========================
   Northernbridge Staffing — V1.2 logo refresh
   New luminous mark supplied by user.
   ========================= */
.logo img{width:320px!important;max-height:78px!important;height:auto!important;object-fit:contain!important}
.footer .brand img{width:360px!important;max-height:none!important;height:auto!important;object-fit:contain!important;background:transparent!important;border:0!important;padding:0!important;filter:drop-shadow(0 8px 18px rgba(0,0,0,.18))}
.site-head .logo img{filter:drop-shadow(0 3px 10px rgba(26,37,106,.10))}
@media (prefers-color-scheme: dark){
  .site-head .logo img,.footer .brand img{filter:drop-shadow(0 0 18px rgba(20,227,192,.12)) drop-shadow(0 0 24px rgba(17,87,255,.14));}
}
@media(max-width:640px){
  .logo img{width:250px!important;max-height:68px!important}
  .footer .brand img{width:280px!important}
}


/* =========================
   Northernbridge Staffing — V1.3 exact supplied logo refresh
   Exact artwork + symbol favicon; presentation adapts to dark surfaces.
   ========================= */
.site-head .logo img{
  object-fit:contain!important;
  filter:drop-shadow(0 3px 10px rgba(8,35,110,.10));
}
.footer .brand img{
  object-fit:contain!important;
  filter:brightness(1.08) saturate(1.08) drop-shadow(0 0 18px rgba(0,210,190,.16)) drop-shadow(0 0 24px rgba(20,70,255,.16));
}
@media (prefers-color-scheme: dark){
  .site-head .logo img{
    filter:brightness(1.10) saturate(1.08) drop-shadow(0 0 16px rgba(0,210,190,.12)) drop-shadow(0 0 20px rgba(20,70,255,.14));
  }
  .footer .brand img{
    filter:brightness(1.14) saturate(1.10) drop-shadow(0 0 20px rgba(0,210,190,.18)) drop-shadow(0 0 28px rgba(20,70,255,.18));
  }
}


/* ==========================================================
   Northernbridge Staffing — V1.4 restrained brand palette
   Three core colour families only:
     Northern Navy  #183A54
     Fjord Teal     #6F9F98
     Warm Ivory     #F5F2EB
   All other values below are tonal shades of those colours.
   ========================================================== */
:root{
  --ink:#17324D;
  --navy:#183A54;
  --navy2:#244B62;
  --paper:#F5F2EB;
  --white:#fff;
  --muted:#6D7779;
  --line:rgba(23,50,77,.12);
  --red:#6F9F98;
  --coral:#A8CBC5;
  --cyan:#6F9F98;
  --blue:#315A70;
  --beige:#E8E4DB;
  --beige-soft:#F5F2EB;
  --beige-deep:#DCD7CC;
  --shadow:0 24px 70px rgba(23,50,77,.11);
}

body{
  color:var(--ink);
  background:var(--paper);
}
.site-head.scrolled{
  background:rgba(245,242,235,.92);
  border-bottom-color:rgba(23,50,77,.10);
}
.nav a:not(.portal):after{background:var(--cyan)}
.portal{background:rgba(255,255,255,.86)}

.hero{
  background:
    radial-gradient(circle at 82% 17%,rgba(111,159,152,.15),transparent 28%),
    radial-gradient(circle at 90% 76%,rgba(49,90,112,.07),transparent 26%),
    linear-gradient(180deg,#F8F5EF 0%,#F5F2EB 100%);
}
.hero:before{
  background-image:
    linear-gradient(rgba(23,50,77,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(23,50,77,.035) 1px,transparent 1px);
}
.display .soft{color:#A3ADAB}
.lead{color:#667175}

.btn.primary{background:var(--navy);border-color:var(--navy)}
.btn.red{background:var(--cyan);border-color:var(--cyan)}
.btn:hover{box-shadow:0 12px 28px rgba(23,50,77,.11)}

.signal-card,
.subhero-art.trend-signal{
  background:linear-gradient(160deg,#142E45,#21465C);
  box-shadow:0 38px 84px rgba(23,50,77,.25);
}
.signal-glow{
  background:radial-gradient(circle,rgba(111,159,152,.30),transparent 68%);
}
.pulse-ring{border-color:rgba(168,203,197,.30)}
.core,
.signal-card .core,
.subhero-art .core{
  background:linear-gradient(135deg,#A8CBC5 0%,#79AAA3 52%,#5F8F89 100%);
  box-shadow:0 0 42px rgba(111,159,152,.28);
}
.scan-line{
  background:linear-gradient(90deg,transparent,#A8CBC5,transparent);
  box-shadow:0 0 16px rgba(168,203,197,.55);
}
.signal-label span{color:#B7C8C8}
.chip{
  border-color:rgba(255,255,255,.13);
  background:rgba(255,255,255,.055);
}

.feature-card,.ticker,.stats,.why-item,.article,.step,.domain,.value,.resource{
  background:#fff;
}
.feature-card .line{
  background:linear-gradient(90deg,#315A70,#6F9F98);
}
.path-card{background:var(--navy)}
.path-card p{color:#C7D1D1}
.path-card.talent{background:#fff;color:var(--ink)}
.path-card.talent p{color:var(--muted)}

.services{
  background:#17324D;
}
.services:after{
  background:
    radial-gradient(circle at 75% 30%,rgba(111,159,152,.11),transparent 31%),
    radial-gradient(circle at 20% 80%,rgba(168,203,197,.07),transparent 28%);
}
.services .section-head p,
.service-row p{color:#B5C3C3}
.service-row .idx{color:#829A9E}
.service-row .arr{color:#A8CBC5}

.ticker span{color:#8B989A}
.ticker i{color:#6F9F98}

.stat b{color:var(--navy)}
.why-item:before{color:#6F9F98}
.testimonial{
  background:linear-gradient(135deg,#fff,#EEF2EE);
  border-color:rgba(23,50,77,.10);
}

.insights-section{background:#EEF2EE}
.article:first-child{background:#183A54}
.article:first-child .meta{color:#B8C9CA}
.article-media{
  background:
    radial-gradient(circle at 78% 16%,rgba(111,159,152,.24),transparent 36%),
    linear-gradient(145deg,#244B62,#183A54);
}
.source-pill{background:rgba(23,50,77,.82)}
.insights-refresh>span{
  background:#6F9F98;
  box-shadow:0 0 0 0 rgba(111,159,152,.30);
}

.cta{
  background:
    radial-gradient(circle at 86% 10%,rgba(168,203,197,.12),transparent 32%),
    linear-gradient(120deg,#17324D,#244B62);
}
.cta .btn:not(.ghost-dark){
  background:#F8F5EF;
  color:#17324D!important;
  border-color:#F8F5EF;
}
.cta .btn:not(.ghost-dark):hover{
  background:#EEF2EE;
  border-color:#EEF2EE;
}
.cta .btn.job-cta{
  background:#6F9F98!important;
  border-color:#6F9F98!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(23,50,77,.18)!important;
}
.cta .btn.job-cta:hover{
  background:#5F8F89!important;
  border-color:#5F8F89!important;
}

.footer{background:#102A3C}
.footer p,.footer address{color:#AABABB}
.footer h4{color:#829A9E}
.foot-links a{color:#D7DFDE}
.copyright{color:#8FA3A4}

.subhero{
  background:
    radial-gradient(circle at 90% 20%,rgba(111,159,152,.12),transparent 30%),
    linear-gradient(180deg,#F8F5EF,#F5F2EB);
}
.subhero-art{background:#183A54}
.subhero-art .dot{
  background:#6F9F98;
  box-shadow:0 0 28px rgba(111,159,152,.38);
}
.section-band{background:#fff}
.domain:hover{background:#183A54}
.domain:hover p{color:#C1CECE}

/* Word cloud: same behaviour, calmer colours. */
.trend-word.tone-white{color:#F7F8F5}
.trend-word.tone-cyan{color:#A8CBC5;text-shadow:0 5px 22px rgba(111,159,152,.12)}
.trend-word.tone-red{color:#7FAEA8;text-shadow:0 5px 22px rgba(111,159,152,.10)}
.trend-word.tone-beige{color:#E7E4DC}
.trend-word.tone-blue-soft{color:#B9C9CB}
.trend-word.tone-cyan-soft{color:#C0D6D2}
.trend-word.tone-beige-soft{color:#D8DEDA}
.trend-cloud:before{
  background:radial-gradient(circle,rgba(168,203,197,.04),transparent 64%);
}

/* Keep the supplied luminous logo unchanged; only presentation is softened. */
.site-head .logo img{
  filter:drop-shadow(0 3px 9px rgba(23,50,77,.08));
}
.footer .brand img{
  filter:brightness(1.05) saturate(.96) drop-shadow(0 7px 18px rgba(0,0,0,.16));
}
@media(prefers-color-scheme:dark){
  .site-head .logo img{
    filter:brightness(1.08) saturate(.96) drop-shadow(0 0 15px rgba(111,159,152,.10));
  }
  .footer .brand img{
    filter:brightness(1.10) saturate(.98) drop-shadow(0 0 18px rgba(111,159,152,.12));
  }
}


/* ==========================================================
   Northernbridge Staffing — V1.5
   White light surfaces + rounded footer logo panel.
   ========================================================== */

:root{
  --paper:#FFFFFF;
  --beige:#FFFFFF;
  --beige-soft:#FFFFFF;
  --beige-deep:#F3F6F5;
}

/* Remove the warm/beige cast from all primary light surfaces. */
html,
body{
  background:#FFFFFF!important;
}

.site-head.scrolled{
  background:rgba(255,255,255,.94)!important;
}

.hero,
.subhero{
  background:
    radial-gradient(circle at 82% 17%,rgba(111,159,152,.10),transparent 28%),
    radial-gradient(circle at 90% 76%,rgba(49,90,112,.045),transparent 26%),
    #FFFFFF!important;
}

.hero:before{
  background-image:
    linear-gradient(rgba(23,50,77,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(23,50,77,.03) 1px,transparent 1px);
}

.section-band,
.feature-card,
.ticker,
.stats,
.why-item,
.article,
.step,
.domain,
.value,
.resource,
.path-card.talent{
  background:#FFFFFF!important;
}

.path-card.talent{
  border-color:rgba(23,50,77,.10)!important;
}

.testimonial{
  background:#FFFFFF!important;
  border-color:rgba(23,50,77,.10)!important;
}

.insights-section{
  background:#FFFFFF!important;
}

.cta .btn:not(.ghost-dark){
  background:#FFFFFF!important;
  border-color:#FFFFFF!important;
}

.cta .btn:not(.ghost-dark):hover{
  background:#F6F9F8!important;
  border-color:#F6F9F8!important;
}

/* Footer logo gets a clean rounded rectangle so the luminous artwork
   reads clearly against the dark footer without changing the logo itself. */
.footer .brand img{
  width:360px!important;
  max-width:100%;
  height:auto!important;
  object-fit:contain!important;
  background:rgba(255,255,255,.97)!important;
  border:1px solid rgba(255,255,255,.30)!important;
  border-radius:20px!important;
  padding:16px 20px!important;
  box-shadow:
    0 16px 42px rgba(0,0,0,.16),
    inset 0 0 0 1px rgba(23,50,77,.04)!important;
  filter:none!important;
}

@media(max-width:640px){
  .footer .brand img{
    width:280px!important;
    border-radius:17px!important;
    padding:13px 16px!important;
  }
}


/* ==========================================================
   NBS v1.0 — final visual system
   Calm high-contrast palette, audited for light/dark surfaces.
   Primary: Deep Atlantic Navy #183F56
   Accent:  Muted Sea Teal   #4D9E93
   Neutral: Cool White / Mist
   ========================================================== */
:root{
  --ink:#183847;
  --navy:#183F56;
  --navy2:#24556A;
  --paper:#FFFFFF;
  --white:#FFFFFF;
  --muted:#586A70;
  --line:rgba(24,56,71,.14);
  --red:#36776F;
  --coral:#8DBDB6;
  --cyan:#4D9E93;
  --blue:#24556A;
  --beige:#F4F7F6;
  --beige-soft:#F4F7F6;
  --beige-deep:#E6EEEC;
  --shadow:0 22px 60px rgba(24,56,71,.10);
}
html,body{background:#fff!important;color:var(--ink)!important}
body::before{
  background-image:
    radial-gradient(circle at 18px 18px,rgba(77,158,147,.22) 0 1.5px,transparent 2.2px),
    radial-gradient(circle at 96px 58px,rgba(24,63,86,.16) 0 1.5px,transparent 2.2px),
    linear-gradient(31deg,transparent 49.6%,rgba(24,63,86,.035) 49.85%,rgba(24,63,86,.035) 50.15%,transparent 50.4%),
    linear-gradient(149deg,transparent 49.6%,rgba(77,158,147,.03) 49.85%,rgba(77,158,147,.03) 50.15%,transparent 50.4%)!important;
  opacity:.075!important;
}

/* Typography: every body-sized text tone meets a readable contrast on white. */
body,p,.section-head p,.feature-card p,.why-copy p,.value p,.resource p,.step p,.domain p{color:var(--muted)}
h1,h2,h3,h4,.display,.nav a,.stat b,.quote{color:var(--ink)}
.eyebrow{color:#36776F!important}
.display .soft{color:#6F8388!important}
.lead{color:#586A70!important}
.feature-card .num,.article .meta,.brands,.band-inner{color:#6C7C82!important}

/* Header / nav */
.site-head.scrolled{background:rgba(255,255,255,.95)!important;border-bottom-color:var(--line)!important}
.nav a{color:#183847!important}
.nav a:not(.portal):after{background:#36776F!important}
.portal{background:#fff!important;border-color:var(--line)!important;color:#183847!important}
.hamb span{background:#183847!important}

/* White hero with only restrained navy/teal ambience. */
.hero,.subhero{
  background:
    radial-gradient(circle at 82% 18%,rgba(77,158,147,.095),transparent 28%),
    radial-gradient(circle at 90% 76%,rgba(36,85,106,.045),transparent 26%),
    #fff!important;
}
.hero:before{
  background-image:
    linear-gradient(rgba(24,63,86,.028) 1px,transparent 1px),
    linear-gradient(90deg,rgba(24,63,86,.028) 1px,transparent 1px)!important;
}
.hero:after,.subhero:after{
  background-image:
    radial-gradient(circle at 16px 20px,rgba(77,158,147,.20) 0 1.5px,transparent 2.2px),
    radial-gradient(circle at 106px 72px,rgba(24,63,86,.16) 0 1.4px,transparent 2.1px),
    linear-gradient(28deg,transparent 49.7%,rgba(24,63,86,.035) 49.9%,rgba(24,63,86,.035) 50.1%,transparent 50.3%),
    linear-gradient(151deg,transparent 49.7%,rgba(77,158,147,.03) 49.9%,rgba(77,158,147,.03) 50.1%,transparent 50.3%)!important;
  opacity:.08!important;
}

/* Signal / word cloud: dark enough for contrast; no blue-purple glare. */
.signal-card,.subhero-art.trend-signal{
  background:
    radial-gradient(circle at 76% 20%,rgba(77,158,147,.16),transparent 29%),
    linear-gradient(158deg,#102D3E 0%,#183F56 58%,#153548 100%)!important;
  box-shadow:0 34px 74px rgba(24,56,71,.20),inset 0 0 0 1px rgba(255,255,255,.055)!important;
}
.signal-glow{background:radial-gradient(circle,rgba(77,158,147,.25),transparent 68%)!important}
.pulse-ring{border-color:rgba(141,189,182,.33)!important}
.core,.signal-card .core,.subhero-art .core{
  background:linear-gradient(135deg,#9BC8C1 0%,#6FACA3 50%,#4D9E93 100%)!important;
  box-shadow:0 0 38px rgba(77,158,147,.25)!important;
}
.scan-line{background:linear-gradient(90deg,transparent,#9BC8C1,transparent)!important;box-shadow:0 0 14px rgba(155,200,193,.45)!important}
.signal-label{color:#F8FBFA!important}
.signal-label span{color:#CAD8D5!important}
.trend-live{color:#E5EFED!important;border-color:rgba(255,255,255,.16)!important;background:rgba(9,27,38,.48)!important}
.trend-live i{background:#8FC5BC!important;box-shadow:0 0 12px rgba(143,197,188,.68)!important}
.trend-word.tone-white{color:#F8FBFA!important}
.trend-word.tone-cyan{color:#A8D1CA!important;text-shadow:none!important}
.trend-word.tone-red{color:#89BEB6!important;text-shadow:none!important}
.trend-word.tone-beige{color:#DCE7E4!important}
.trend-word.tone-blue-soft{color:#C2D2D4!important}
.trend-word.tone-cyan-soft{color:#B6D7D1!important}
.trend-word.tone-beige-soft{color:#D3E0DE!important}
.cursor-node{box-shadow:0 0 0 5px rgba(77,158,147,.14),0 0 26px 8px rgba(77,158,147,.42)!important}

/* Cards / pathways */
.feature-card,.ticker,.stats,.why-item,.article,.step,.domain,.value,.resource,.path-card.talent{background:#fff!important;border-color:var(--line)!important;color:var(--ink)!important}
.feature-card .line{background:linear-gradient(90deg,#24556A,#4D9E93)!important}
.feature-card-dark{
  background:linear-gradient(145deg,#183F56,#24556A)!important;
  color:#F8FBFA!important;
  border-color:rgba(255,255,255,.13)!important;
}
.feature-card-dark h3{color:#F8FBFA!important}
.feature-card-dark p,.feature-card-dark .dark-copy{color:#CBD8D5!important}
.feature-card-dark .num,.feature-card-dark .num-label{color:#A8C0C1!important}
.path-card{background:linear-gradient(145deg,#183F56,#214A60)!important;color:#F8FBFA!important}
.path-card h3{color:#F8FBFA!important}
.path-card p{color:#CBD8D5!important}
.path-card .eyebrow,.on-dark-accent{color:#A8D1CA!important}
.path-card.talent h3{color:var(--ink)!important}
.path-card.talent p{color:var(--muted)!important}
.path-card.talent .eyebrow{color:#36776F!important}

/* Dark service and about bands */
.services,.dark-section{background:#183F56!important;color:#F8FBFA!important}
.services:after{background:radial-gradient(circle at 75% 30%,rgba(77,158,147,.12),transparent 31%)!important}
.services h2,.services h3,.dark-section h2,.dark-section h3{color:#F8FBFA!important}
.services .section-head p,.service-row p{color:#C4D2D1!important}
.service-row .idx{color:#9DB3B4!important}
.service-row .arr{color:#9BC8C1!important}
.service-list,.service-row{border-color:rgba(255,255,255,.14)!important}
.dark-section .eyebrow,.dark-section .on-dark-accent{color:#A8D1CA!important}
.dark-section .feature-card-dark{background:#214B60!important}

/* Soft alternating sections: cool neutral, never beige. */
.soft-section{background:#F4F7F6!important}
.soft-section .step{background:#fff!important}

/* Ticker and stats */
.ticker{background:#fff!important}
.ticker span{color:#63757B!important}
.ticker i{color:#36776F!important}
.stat b{color:#183F56!important}
.stat span{color:#586A70!important}
.why-item:before{color:#36776F!important}
.testimonial{background:#F7FAF9!important;border-color:var(--line)!important}

/* Insights */
.insights-section{background:#F4F7F6!important}
.article:first-child{background:#183F56!important;color:#F8FBFA!important}
.article:first-child h3,.article:first-child a{color:#F8FBFA!important}
.article:first-child .meta{color:#BFD0CE!important}
.article-media{background:linear-gradient(145deg,#24556A,#183F56)!important}
.source-pill{background:rgba(16,45,62,.88)!important;color:#fff!important}
.insights-note,.insights-refresh small{color:#586A70!important}
.insights-refresh>span{background:#4D9E93!important}
.insights-refresh b{color:#183847!important}

/* CTA */
.cta{background:linear-gradient(120deg,#183F56,#24556A)!important;color:#F8FBFA!important}
.cta h2{color:#F8FBFA!important}
.cta .eyebrow{color:#DCE7E4!important}
.cta .btn:not(.ghost-dark){background:#fff!important;color:#183847!important;border-color:#fff!important}
.cta .btn.job-cta{background:#36776F!important;border-color:#36776F!important;color:#fff!important;box-shadow:0 12px 26px rgba(16,45,62,.20)!important}
.cta .btn.job-cta:hover{background:#2F6963!important;border-color:#2F6963!important}

/* Footer: readable copy and optically centered logo panel. */
.footer{background:#102D3E!important;color:#F8FBFA!important}
.footer p,.footer address{color:#C4D2D1!important}
.footer h4{color:#9FB7B7!important}
.foot-links a{color:#E5EFED!important}
.foot-links a:hover,.footer address a:hover{color:#fff!important}
.copyright{color:#9FB2B3!important;border-top-color:rgba(255,255,255,.12)!important}
.footer .brand img{
  width:360px!important;
  max-width:100%!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:none!important;
}

/* Logo: no dark-mode filters that distort brand colours. */
.site-head .logo img{filter:none!important;width:300px!important;max-height:72px!important}
@media(prefers-color-scheme:dark){.site-head .logo img,.footer .brand img{filter:none!important}}

/* Hover states */
.domain:hover{background:#183F56!important;color:#F8FBFA!important;border-color:#183F56!important}
.domain:hover h3{color:#F8FBFA!important}
.domain:hover p{color:#CBD8D5!important}
.btn:hover{box-shadow:0 12px 28px rgba(24,56,71,.12)!important}

@media(max-width:640px){
  .site-head .logo img{width:230px!important;max-height:58px!important}
  .footer .brand img{width:290px!important}
}


/* ==========================================================
   NBS v1.1 — Navy / Red / White
   Palette sampled from the supplied reference:
     Navy  #012A61
     Red   #E11125
     White #FFFFFF
   Supporting values are only tonal tints/shades for contrast.
   ========================================================== */
:root{
  --ink:#012A61;
  --navy:#012A61;
  --navy2:#0A3A77;
  --paper:#FFFFFF;
  --white:#FFFFFF;
  --muted:#4D6078;
  --line:rgba(1,42,97,.13);
  --red:#E11125;
  --coral:#F06A77;
  --cyan:#E11125;
  --blue:#012A61;
  --beige:#F4F7FA;
  --beige-soft:#F7F9FC;
  --beige-deep:#E8EEF5;
  --shadow:0 22px 60px rgba(1,42,97,.11);
}

/* Global legibility */
html,body{
  background:#FFFFFF!important;
  color:#012A61!important;
  color-scheme:light;
}
body,p,.section-head p,.feature-card p,.why-copy p,.value p,.resource p,.step p,.domain p{
  color:#4D6078!important;
}
h1,h2,h3,h4,.display,.nav a,.stat b,.quote{
  color:#012A61!important;
}
.eyebrow{
  color:#E11125!important;
}
.display .soft{
  color:#8392A6!important;
}
.lead{
  color:#4D6078!important;
}
.feature-card .num,.article .meta,.brands,.band-inner{
  color:#6A7890!important;
}

/* Header */
.site-head.scrolled{
  background:rgba(255,255,255,.96)!important;
  border-bottom-color:rgba(1,42,97,.11)!important;
}
.nav a{
  color:#012A61!important;
}
.nav a:not(.portal):after{
  background:#E11125!important;
}
.portal{
  background:#FFFFFF!important;
  border-color:rgba(1,42,97,.14)!important;
  color:#012A61!important;
}
.portal:hover{
  border-color:#E11125!important;
  color:#E11125!important;
}
.hamb span{
  background:#012A61!important;
}

/* Hero / light sections */
.hero,.subhero{
  background:
    radial-gradient(circle at 84% 16%,rgba(1,42,97,.055),transparent 29%),
    radial-gradient(circle at 94% 82%,rgba(225,17,37,.045),transparent 24%),
    #FFFFFF!important;
}
.hero:before{
  background-image:
    linear-gradient(rgba(1,42,97,.027) 1px,transparent 1px),
    linear-gradient(90deg,rgba(1,42,97,.027) 1px,transparent 1px)!important;
}
.hero:after,.subhero:after{
  background-image:
    radial-gradient(circle at 16px 20px,rgba(225,17,37,.17) 0 1.4px,transparent 2.1px),
    radial-gradient(circle at 106px 72px,rgba(1,42,97,.14) 0 1.4px,transparent 2.1px),
    linear-gradient(28deg,transparent 49.7%,rgba(1,42,97,.03) 49.9%,rgba(1,42,97,.03) 50.1%,transparent 50.3%),
    linear-gradient(151deg,transparent 49.7%,rgba(225,17,37,.025) 49.9%,rgba(225,17,37,.025) 50.1%,transparent 50.3%)!important;
  opacity:.075!important;
}

/* Talent signal / word cloud */
.signal-card,.subhero-art.trend-signal{
  background:
    radial-gradient(circle at 76% 18%,rgba(225,17,37,.11),transparent 27%),
    linear-gradient(158deg,#001C43 0%,#012A61 62%,#07366E 100%)!important;
  box-shadow:0 34px 76px rgba(1,42,97,.23),inset 0 0 0 1px rgba(255,255,255,.055)!important;
}
.signal-glow{
  background:radial-gradient(circle,rgba(225,17,37,.22),transparent 69%)!important;
}
.pulse-ring{
  border-color:rgba(255,255,255,.22)!important;
}
.core,.signal-card .core,.subhero-art .core{
  background:linear-gradient(135deg,#F04D5D 0%,#E11125 56%,#BB0E1E 100%)!important;
  box-shadow:0 0 38px rgba(225,17,37,.27)!important;
}
.scan-line{
  background:linear-gradient(90deg,transparent,#FFFFFF,transparent)!important;
  box-shadow:0 0 14px rgba(255,255,255,.34)!important;
}
.signal-label{
  color:#FFFFFF!important;
}
.signal-label span{
  color:#D8E1ED!important;
}
.trend-live{
  color:#FFFFFF!important;
  border-color:rgba(255,255,255,.18)!important;
  background:rgba(0,20,49,.52)!important;
}
.trend-live i{
  background:#E11125!important;
  box-shadow:0 0 12px rgba(225,17,37,.75)!important;
}
.trend-word.tone-white{color:#FFFFFF!important}
.trend-word.tone-cyan{color:#D9E5F4!important;text-shadow:none!important}
.trend-word.tone-red{color:#FF8994!important;text-shadow:none!important}
.trend-word.tone-beige{color:#E9EEF5!important}
.trend-word.tone-blue-soft{color:#BFCDE0!important}
.trend-word.tone-cyan-soft{color:#D1DBE8!important}
.trend-word.tone-beige-soft{color:#E2E8F0!important}
.cursor-node{
  box-shadow:0 0 0 5px rgba(225,17,37,.14),0 0 26px 8px rgba(225,17,37,.40)!important;
}

/* Buttons */
.btn.primary{
  background:#012A61!important;
  border-color:#012A61!important;
  color:#FFFFFF!important;
}
.btn.primary:hover{
  background:#001F49!important;
  border-color:#001F49!important;
}
.btn.red,.btn.job-cta{
  background:#E11125!important;
  border-color:#E11125!important;
  color:#FFFFFF!important;
}
.btn.red:hover,.btn.job-cta:hover{
  background:#BE0E1F!important;
  border-color:#BE0E1F!important;
}
.btn:not(.primary):not(.red):not(.job-cta):not(.ghost-dark){
  background:#FFFFFF!important;
  border-color:rgba(1,42,97,.18)!important;
  color:#012A61!important;
}
.btn:not(.primary):not(.red):not(.job-cta):not(.ghost-dark):hover{
  border-color:#E11125!important;
  color:#E11125!important;
}

/* Cards / pathways */
.feature-card,.ticker,.stats,.why-item,.article,.step,.domain,.value,.resource,.path-card.talent{
  background:#FFFFFF!important;
  border-color:rgba(1,42,97,.12)!important;
  color:#012A61!important;
}
.feature-card .line{
  background:linear-gradient(90deg,#012A61,#E11125)!important;
}
.feature-card-dark{
  background:linear-gradient(145deg,#012A61,#0A3A77)!important;
  color:#FFFFFF!important;
  border-color:rgba(255,255,255,.14)!important;
}
.feature-card-dark h3{
  color:#FFFFFF!important;
}
.feature-card-dark p,.feature-card-dark .dark-copy{
  color:#D6E0EC!important;
}
.feature-card-dark .num,.feature-card-dark .num-label{
  color:#FF9AA3!important;
}
.path-card{
  background:linear-gradient(145deg,#012A61,#07366E)!important;
  color:#FFFFFF!important;
}
.path-card h3{
  color:#FFFFFF!important;
}
.path-card p{
  color:#D6E0EC!important;
}
.path-card .eyebrow,.on-dark-accent{
  color:#FFFFFF!important;
}
.path-card.talent h3{
  color:#012A61!important;
}
.path-card.talent p{
  color:#4D6078!important;
}
.path-card.talent .eyebrow{
  color:#E11125!important;
}
.ghost-dark{
  background:transparent!important;
  border-color:rgba(255,255,255,.50)!important;
  color:#FFFFFF!important;
}
.ghost-dark:hover{
  background:#FFFFFF!important;
  border-color:#FFFFFF!important;
  color:#012A61!important;
}

/* Dark service/about sections */
.services,.dark-section{
  background:#012A61!important;
  color:#FFFFFF!important;
}
.services:after{
  background:
    radial-gradient(circle at 75% 30%,rgba(225,17,37,.10),transparent 31%),
    radial-gradient(circle at 22% 78%,rgba(255,255,255,.035),transparent 27%)!important;
}
.services h2,.services h3,.dark-section h2,.dark-section h3{
  color:#FFFFFF!important;
}
.services .section-head p,.service-row p{
  color:#D6E0EC!important;
}
.service-row .idx{
  color:#AFC0D4!important;
}
.service-row .arr{
  color:#FFFFFF!important;
}
.service-list,.service-row{
  border-color:rgba(255,255,255,.15)!important;
}
.dark-section .eyebrow,.dark-section .on-dark-accent{
  color:#FFFFFF!important;
}
.dark-section .feature-card-dark{
  background:#07366E!important;
}

/* Soft sections */
.soft-section,.insights-section{
  background:#F4F7FA!important;
}
.soft-section .step{
  background:#FFFFFF!important;
}

/* Ticker / stats / why */
.ticker span{
  color:#5B6B82!important;
}
.ticker i{
  color:#E11125!important;
}
.stat b{
  color:#012A61!important;
}
.stat span{
  color:#4D6078!important;
}
.why-item:before{
  color:#E11125!important;
}
.testimonial{
  background:#F7F9FC!important;
  border-color:rgba(1,42,97,.12)!important;
}

/* Insights */
.article:first-child{
  background:#012A61!important;
  color:#FFFFFF!important;
}
.article:first-child h3,.article:first-child a{
  color:#FFFFFF!important;
}
.article:first-child .meta{
  color:#C5D2E1!important;
}
.article-media{
  background:linear-gradient(145deg,#0A3A77,#012A61)!important;
}
.source-pill{
  background:rgba(0,28,67,.88)!important;
  color:#FFFFFF!important;
}
.insights-note,.insights-refresh small{
  color:#4D6078!important;
}
.insights-refresh>span{
  background:#E11125!important;
}
.insights-refresh b{
  color:#012A61!important;
}

/* CTA returns to the earlier strong red-band treatment */
.cta{
  background:linear-gradient(120deg,#C90F21 0%,#E11125 56%,#EF3345 100%)!important;
  color:#FFFFFF!important;
}
.cta h2{
  color:#FFFFFF!important;
}
.cta .eyebrow{
  color:#FFFFFF!important;
}
.cta .btn:not(.ghost-dark){
  background:#FFFFFF!important;
  color:#012A61!important;
  border-color:#FFFFFF!important;
}
.cta .btn:not(.ghost-dark):hover{
  background:#F4F7FA!important;
  border-color:#F4F7FA!important;
  color:#012A61!important;
}
.cta .btn.job-cta{
  background:#012A61!important;
  border-color:#012A61!important;
  color:#FFFFFF!important;
}
.cta .btn.job-cta:hover{
  background:#001F49!important;
  border-color:#001F49!important;
}

/* Footer */
.footer{
  background:#001C43!important;
  color:#FFFFFF!important;
}
.footer p,.footer address{
  color:#C9D5E3!important;
}
.footer h4{
  color:#9DB0C8!important;
}
.foot-links a{
  color:#E8EEF5!important;
}
.foot-links a:hover,.footer address a:hover{
  color:#FFFFFF!important;
}
.copyright{
  color:#9EADC1!important;
  border-top-color:rgba(255,255,255,.13)!important;
}

/* Footer logo panel: centered, balanced, and high-contrast. */
.footer .brand{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
}
.footer .brand img{
  width:360px!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  background:#FFFFFF!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:20px!important;
  padding:18px 22px!important;
  box-shadow:0 14px 38px rgba(0,0,0,.16)!important;
  filter:none!important;
}

/* Domains / hover */
.domain:hover{
  background:#012A61!important;
  color:#FFFFFF!important;
  border-color:#012A61!important;
}
.domain:hover h3{
  color:#FFFFFF!important;
}
.domain:hover p{
  color:#D6E0EC!important;
}
.btn:hover{
  box-shadow:0 12px 28px rgba(1,42,97,.14)!important;
}

/* Do not let OS dark-mode transformations muddy contrast. */
@media(prefers-color-scheme:dark){
  html,body{
    background:#FFFFFF!important;
    color:#012A61!important;
  }
  .site-head .logo img,.footer .brand img{
    filter:none!important;
  }
}

@media(max-width:640px){
  .footer .brand img{
    width:285px!important;
    border-radius:17px!important;
    padding:14px 17px!important;
  }
}


/* NBS v1.2.1 — softer deeper red logo refresh + cleaner footer mark */
:root{ --red:#B72C3F; }
.eyebrow,.nav a:not(.portal):after{ color:var(--red); }
.cta{ background:linear-gradient(120deg,#B72C3F,#D24B57); color:#fff; }
.footer .brand img{
  width:340px!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  background:#FFFFFF!important;
  border:0!important;
  border-radius:22px!important;
  padding:12px 16px!important;
  box-shadow:0 14px 38px rgba(0,0,0,.16)!important;
  filter:none!important;
}
@media(max-width:640px){
  .footer .brand img{
    width:275px!important;
    padding:10px 14px!important;
  }
}


/* NBS v1.2.2 — footer logo enlarged, tighter white surround */
.footer .brand img{
  width:420px!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  background:#FFFFFF!important;
  border:0!important;
  border-radius:20px!important;
  padding:6px 10px!important;
  box-shadow:0 12px 30px rgba(0,0,0,.14)!important;
  filter:none!important;
}
@media(max-width:640px){
  .footer .brand img{
    width:300px!important;
    padding:5px 8px!important;
    border-radius:18px!important;
  }
}
