.page-content .nlab-page {
--navy:var(--brand-navy);
  --indigo:var(--brand-indigo);
  --lavender:var(--brand-lavender);
  --off:var(--brand-off-white);
  --stone:var(--brand-stone);
  --white:var(--brand-white);
  --soft:#5B6475;
  --border:rgba(15,23,42,.13);
  color:var(--navy);
  background:var(--brand-white);
  overflow:hidden;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.65;
}

.page-content .nlab-page *,
.page-content .nlab-page *::before,
.page-content .nlab-page *::after {
box-sizing:border-box;
}

.page-content .nlab-page h1,
.page-content .nlab-page h2,
.page-content .nlab-page h3,
.page-content .nlab-page p {
margin-top:0;
}

.page-content .nlab-page a {
color:inherit;
}

.page-content .nlab-shell {
width:min(1220px,calc(100% - 44px)); margin:0 auto;
}

.page-content .nlab-eyebrow {
margin:0 0 14px;
  color:var(--indigo);
  font-size:11px;
  font-weight:850;
  letter-spacing:2.25px;
  text-transform:uppercase;
}

.page-content .nlab-eyebrow-line {
display:inline-flex;
  align-items:center;
  gap:11px;
}

.page-content .nlab-eyebrow-line::before {
content:"";
  width:26px;
  height:1px;
  background:var(--lavender);
}

.page-content .nlab-page h2 {
margin-bottom:20px;
  color:var(--indigo);
  font-size:clamp(34px,4.5vw,52px);
  line-height:1.04;
  letter-spacing:-.045em;
}

.page-content .nlab-page h3 {
color:var(--indigo);
}

.page-content .nlab-btn {
min-height:52px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  padding:12px 24px;
  border-radius:8px;
  font-size:14px;
  font-weight:800;
  text-decoration:none;
  transition:transform .18s ease,background .18s ease;
}

.page-content .nlab-btn:hover {
transform:translateY(-2px);
}

.page-content .nlab-btn-primary {
color:var(--brand-white) !important; background:var(--indigo);
}

.page-content .nlab-btn-primary:hover {
background:var(--navy);
}

.page-content .nlab-btn-secondary {
background:var(--brand-white); border:1px solid rgba(15,23,42,.25);
}

.page-content .nlab-section-heading {
max-width:860px; margin-bottom:42px;
}

.page-content .nlab-section-heading-centred {
margin-right:auto; margin-left:auto; text-align:center;
}

.page-content .nlab-section-heading > p:last-child {
max-width:760px; color:var(--soft); font-size:16px;
}

.page-content .nlab-section-heading-centred > p:last-child {
margin-right:auto; margin-left:auto;
}

.page-content .nlab-hero {
padding:68px 0 74px;
  background:
    radial-gradient(circle at 90% 12%,rgba(167,139,250,.22),transparent 27%),
    linear-gradient(130deg,var(--off),var(--brand-white));
}

.page-content .nlab-hero-grid {
display:grid;
  grid-template-columns:1.28fr .72fr;
  gap:74px;
  align-items:center;
}

.page-content .nlab-hero-copy h1 {
max-width:850px;
  margin:0 0 22px;
  font-size:clamp(42px,5.2vw,64px);
  font-weight:680;
  line-height:.98;
  letter-spacing:-.055em;
}

.page-content .nlab-hero-copy h1 span {
display:block; color:var(--indigo);
}

.page-content .nlab-lead {
color:var(--navy) !important; font-size:20px !important; font-weight:710;
}

.page-content .nlab-hero-copy > p {
max-width:760px; color:var(--soft); font-size:16px;
}

.page-content .nlab-actions {
display:flex; flex-wrap:wrap; gap:12px; margin-top:27px;
}

.page-content .nlab-profile {
max-width:365px;
  justify-self:end;
  transform:translateX(-26px);
  overflow:hidden;
  background:var(--brand-white);
  border:1px solid var(--border);
  border-radius:18px;
  box-shadow:0 20px 50px rgba(15,23,42,.13);
}

.page-content .nlab-profile > img {
width:100%;
  display:block;
  aspect-ratio:1.28 / 1;
  object-fit:cover;
  object-position:center 36%;
}

.page-content .nlab-profile-copy {
display:flex;
  flex-direction:column;
  padding:14px 17px 13px;
  border-bottom:1px solid var(--border);
}

.page-content .nlab-profile-copy strong {
font-size:16px;
}

.page-content .nlab-profile-copy span {
color:var(--soft); font-size:10px;
}

.page-content .nlab-qualification-grid {
display:grid; grid-template-columns:1fr 1fr;
}

.page-content .nlab-qualification-grid > div {
min-height:66px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:9px 14px;
}

.page-content .nlab-qualification-grid > div:nth-child(even) {
border-left:1px solid var(--border);
}

.page-content .nlab-qualification-grid > div:nth-child(n+3) {
border-top:1px solid var(--border);
}

.page-content .nlab-qualification-grid strong {
color:var(--indigo); font-size:11px;
}

.page-content .nlab-qualification-grid span {
color:var(--soft); font-size:8.5px;
}

.page-content .nlab-credentials {
padding:86px 0 94px;
  background:var(--brand-white);
}

.page-content .nlab-logo-wall {
display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:12px;
}

.page-content .nlab-logo-card {
min-width:0;
  overflow:hidden;
  background:var(--off);
  border:1px solid var(--border);
  border-radius:15px;
}

.page-content .nlab-logo-stage {
height:160px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:14px;
  background:var(--brand-white);
  border-bottom:1px solid var(--border);
}

.page-content .nlab-logo-stage img {
width:100%;
  max-height:132px;
  object-fit:contain;
}

.page-content .nlab-logo-card > strong,
.page-content .nlab-logo-card > span {
display:block;
  padding-right:13px;
  padding-left:13px;
}

.page-content .nlab-logo-card > strong {
padding-top:13px;
  font-size:12px;
  line-height:1.25;
}

.page-content .nlab-logo-card > span {
padding-top:4px;
  padding-bottom:14px;
  color:var(--soft);
  font-size:8.5px;
}

.page-content .nlab-experience,
.page-content .nlab-practical {
padding:88px 0;
}

.page-content .nlab-experience {
background:var(--stone);
}

.page-content .nlab-practical {
background:var(--brand-white);
}

.page-content .nlab-two-column {
display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:82px;
  align-items:start;
}

.page-content .nlab-copy p {
color:var(--soft); font-size:16px;
}

.page-content .nlab-highlight {
margin-top:24px !important;
  padding:18px 20px;
  color:var(--navy) !important;
  background:var(--brand-white);
  border-left:4px solid var(--indigo);
  font-weight:700;
}

.page-content .nlab-details {
padding:92px 0;
  background:linear-gradient(120deg,var(--brand-white),var(--off));
}

.page-content .nlab-detail-list {
display:grid;
  gap:16px;
}

.page-content .nlab-detail-item {
display:grid;
  grid-template-columns:170px 1fr;
  gap:24px;
  align-items:center;
  padding:22px;
  background:var(--brand-white);
  border:1px solid var(--border);
  border-radius:16px;
}

.page-content .nlab-detail-logo {
height:160px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:14px;
  background:var(--brand-white);
  border:1px solid var(--border);
  border-radius:12px;
}

.page-content .nlab-detail-logo img {
width:100%;
  max-height:130px;
  object-fit:contain;
}

.page-content .nlab-detail-copy h3 {
margin:0 0 12px;
  font-size:23px;
  line-height:1.15;
}

.page-content .nlab-detail-copy ul {
display:grid;
  gap:7px;
  margin:0;
  padding:0;
  list-style:none;
}

.page-content .nlab-detail-copy li {
position:relative;
  padding-left:18px;
  color:var(--soft);
  font-size:13px;
}

.page-content .nlab-detail-copy li::before {
content:"•";
  position:absolute;
  left:0;
  top:0;
  color:var(--indigo);
  font-weight:900;
}

.page-content .nlab-practical-box {
display:grid;
  gap:6px;
  margin-top:24px;
  padding:20px 22px;
  background:var(--off);
  border-left:4px solid var(--lavender);
  border-radius:10px;
}

.page-content .nlab-practical-box strong {
color:var(--indigo);
  font-size:15px;
}

.page-content .nlab-practical-box span {
color:var(--soft);
  font-size:13px;
}

.page-content .nlab-values {
padding:88px 0;
  background:var(--off);
}

.page-content .nlab-values-grid {
display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--border);
  border-left:1px solid var(--border);
}

.page-content .nlab-values-grid article {
min-height:215px;
  padding:23px;
  background:var(--brand-white);
  border-right:1px solid var(--border);
  border-bottom:1px solid var(--border);
}

.page-content .nlab-values-grid span {
display:block;
  margin-bottom:39px;
  color:var(--indigo);
  font-size:11px;
  font-weight:850;
}

.page-content .nlab-values-grid h3 {
margin:0 0 8px; font-size:21px;
}

.page-content .nlab-values-grid p {
margin:0; color:var(--soft); font-size:12px;
}

.page-content .nlab-cta {
padding:68px 0;
  background:linear-gradient(110deg,rgba(167,139,250,.9),rgba(167,139,250,.52),var(--off));
}

.page-content .nlab-cta-grid {
display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:65px;
  align-items:end;
}

.page-content .nlab-cta p {
max-width:700px; color:rgba(15,23,42,.7);
}

.page-content .nlab-cta-actions {
margin-top:0;
}

@media (max-width:1180px) {
.page-content .nlab-logo-wall {
grid-template-columns:repeat(4,1fr);
}
}

@media (max-width:1000px) {
.page-content .nlab-hero-grid,
.page-content .nlab-two-column,
.page-content .nlab-cta-grid {
grid-template-columns:1fr;
    gap:40px;
}

.page-content .nlab-profile {
justify-self:start; transform:none;
}

.page-content .nlab-values-grid {
grid-template-columns:repeat(2,1fr);
}
}

@media (max-width:900px) {
.page-content .nlab-logo-wall-complete {
grid-template-columns:repeat(3,1fr);
}
}

@media (max-width:780px) {
.page-content .nlab-logo-wall {
grid-template-columns:repeat(3,1fr);
}

.page-content .nlab-detail-item {
grid-template-columns:1fr;
}

.page-content .nlab-detail-logo {
height:200px;
}
}

@media (max-width:680px) {
.page-content .nlab-shell {
width:min(100% - 28px,1220px);
}

.page-content .nlab-hero,
.page-content .nlab-credentials,
.page-content .nlab-experience,
.page-content .nlab-details,
.page-content .nlab-practical,
.page-content .nlab-values {
padding:61px 0;
}

.page-content .nlab-hero-copy h1 {
font-size:38px;
}

.page-content .nlab-profile {
max-width:none;
}

.page-content .nlab-actions {
flex-direction:column;
}

.page-content .nlab-btn {
width:100%;
}

.page-content .nlab-logo-wall {
grid-template-columns:repeat(2,1fr);
}

.page-content .nlab-values-grid {
grid-template-columns:1fr;
}
}

@media (max-width:430px) {
.page-content .nlab-logo-wall {
grid-template-columns:1fr;
}
}

.page-content .nlab-logo-stage img.nlab-logo-enlarge {
width: 120%;
  max-width: 120%;
  max-height: 158px;
}

.page-content .nlab-logo-wall-progress .nlab-logo-stage {
height: 174px;
  padding: 10px;
}

.page-content .nlab-logo-wall-progress .nlab-logo-stage img {
width: 114%;
  max-width: 114%;
  max-height: 150px;
}

.page-content .nlab-credential-tier-progress .nlab-logo-card {
background: #fbfaf8;
}

.page-content .nlab-why {
margin: 14px 0 0;
  padding: 13px 15px;
  color: var(--soft);
  background: var(--off);
  border-left: 3px solid var(--lavender);
  border-radius: 8px;
  font-size: 12px;
  line-height: 1.55;
}

.page-content .nlab-why strong {
color: var(--indigo);
}

@media (max-width: 680px) {
.page-content .nlab-logo-stage img.nlab-logo-enlarge {
width: 112%;
    max-width: 112%;
}

.page-content .nlab-logo-wall-progress .nlab-logo-stage img {
width: 108%;
    max-width: 108%;
}
}

.page-content .nlab-credential-tier + .nlab-credential-tier {
margin-top: 42px;
  padding-top: 34px;
  border-top: 1px solid var(--border);
}

.page-content .nlab-tier-heading {
margin-bottom: 20px;
  text-align: left;
}

.page-content .nlab-tier-kicker {
margin: 0 0 5px;
  color: var(--indigo);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: 1.8px;
}

.page-content .nlab-tier-heading h3 {
margin: 0;
  color: var(--navy);
  font-size: 22px;
  line-height: 1.2;
}

.page-content .nlab-tier-heading-progress {
display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 5px 12px;
}

.page-content .nlab-tier-heading-progress .nlab-tier-kicker {
width: 100%;
}

.page-content .nlab-tier-heading-progress span {
margin-bottom: 2px;
  color: var(--soft);
  font-size: 10px;
  font-weight: 700;
}

.page-content .nlab-logo-wall-complete {
grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
}

.page-content .nlab-logo-wall-complete .nlab-logo-stage {
height: 205px;
  padding: 22px;
}

.page-content .nlab-logo-wall-complete .nlab-logo-stage img {
max-height: 165px;
}

.page-content .nlab-logo-card-complete {
box-shadow: 0 14px 34px rgba(15,23,42,.07);
}

.page-content .nlab-logo-wall-progress {
grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 11px;
}

.page-content .nlab-logo-card-progress {
position: relative;
  background: #faf9f7;
  box-shadow: none;
}

.page-content .nlab-logo-card-progress .nlab-logo-stage {
height: 125px;
  padding: 16px;
  background: rgba(255,255,255,.72);
}

.page-content .nlab-logo-card-progress .nlab-logo-stage img {
max-height: 92px;
  opacity: .72;
  filter: saturate(.7);
}

.page-content .nlab-logo-card-progress > strong,
.page-content .nlab-logo-card-progress > span {
opacity: .78;
}

.page-content .nlab-status-badge {
position: absolute;
  top: 9px;
  right: 9px;
  z-index: 2;
  padding: 4px 7px;
  color: var(--indigo);
  background: rgba(240,237,255,.94);
  border: 1px solid rgba(79,93,255,.14);
  border-radius: 999px;
  font-size: 7.5px;
  font-weight: 800;
  letter-spacing: .45px;
  text-transform: uppercase;
}

.page-content .nlab-detail-tier-heading {
margin: 3px 0 -3px;
}

.page-content .nlab-detail-tier-heading-progress {
margin-top: 35px;
  padding-top: 30px;
  border-top: 1px solid var(--border);
}

.page-content .nlab-detail-tier-heading-progress span {
display: block;
  margin-top: 4px;
  color: var(--soft);
  font-size: 11px;
}

.page-content .nlab-detail-item-progress {
opacity: .84;
  background: rgba(255,255,255,.62);
}

.page-content .nlab-detail-item-progress h3 small {
display: inline-block;
  margin-left: 8px;
  padding: 4px 7px;
  vertical-align: middle;
  color: var(--indigo);
  background: var(--lavender-soft);
  border-radius: 999px;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .4px;
  text-transform: uppercase;
}

@media (max-width: 980px) {
.page-content .nlab-logo-wall-complete {
grid-template-columns: repeat(3, minmax(0,1fr));
}

.page-content .nlab-logo-wall-progress {
grid-template-columns: repeat(3, minmax(0,1fr));
}
}

@media (max-width: 680px) {
.page-content .nlab-logo-wall-complete,
.page-content .nlab-logo-wall-progress {
grid-template-columns: 1fr;
}

.page-content .nlab-logo-wall-complete .nlab-logo-stage {
height: 175px;
}

.page-content .nlab-logo-wall-progress .nlab-logo-stage {
height: 145px;
}

.page-content .nlab-tier-heading-progress {
display: block;
}

.page-content .nlab-tier-heading-progress span {
display: block; margin-top: 5px;
}
}

.page-content .nlab-logo-wall-complete,
.page-content .nlab-logo-wall-progress {
width: 100%;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.page-content .nlab-logo-wall-complete .nlab-logo-stage {
height: 230px;
  padding: 16px;
}

.page-content .nlab-logo-wall-complete .nlab-logo-stage img {
max-height: 190px;
  transform: scale(1.1);
}

.page-content .nlab-logo-card-progress .nlab-logo-stage {
height: 175px;
  padding: 12px;
}

.page-content .nlab-logo-card-progress .nlab-logo-stage img {
max-height: 145px;
  opacity: .9;
  filter: saturate(.85);
  transform: scale(1.12);
}

@media (max-width: 980px) {
.page-content .nlab-logo-wall-complete,
.page-content .nlab-logo-wall-progress {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

@media (max-width: 680px) {
.page-content .nlab-logo-wall-complete,
.page-content .nlab-logo-wall-progress {
grid-template-columns: 1fr;
}
}

@media (min-width: 981px) {
.page-content .nlab-logo-wall-complete {
grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
}

.page-content .nlab-logo-wall-complete .nlab-logo-stage {
height: 205px;
    padding: 12px;
}

.page-content .nlab-logo-wall-complete .nlab-logo-stage img {
max-height: 170px;
    max-width: 100%;
    transform: none;
}
}

@media (min-width: 681px) and (max-width: 980px) {
.page-content .nlab-logo-wall-complete {
grid-template-columns: repeat(3, minmax(0,1fr));
}
}

@media (max-width: 680px) {
.page-content .nlab-logo-wall-complete {
grid-template-columns: repeat(2, minmax(0,1fr));
}
}

@media (max-width: 430px) {
.page-content .nlab-logo-wall-complete {
grid-template-columns: 1fr;
}
}
