/*
Theme Name: NDT Jobs Child
Theme URI: https://ndt-jobs.com
Description: Custom child theme for NDT Jobs v3.
Author: NDT Jobs
Template: twentytwentyfive
Version: 1.1.2087
Text Domain: ndt-jobs-child
*/

/* =========================================================
   NDT Jobs Custom Homepage
   Scoped to homepage-specific classes
   ========================================================= */

/* Hide the default theme header/footer on hard-coded NDT custom pages.
   These pages render their own reusable NDT header/footer. */
body.home #page > #header,
body.home #page > #footer,
body.home #page > #header + hr,
body.home #page > footer#colophon,
body.ndt-custom-page #page > #header,
body.ndt-custom-page #page > #footer,
body.ndt-custom-page #page > #header + hr,
body.ndt-custom-page #page > footer#colophon {
	display: none;
}

body.home {
	margin: 0;
}

.ndt-home,
.ndt-home-site-header,
.ndt-home-site-footer {
	--ndt-home-navy: #0B1F3D;
	--ndt-home-navy-2: #102C54;
	--ndt-home-dark: #07172E;
	--ndt-home-pink: #FF006D;
	--ndt-home-pink-soft: rgba(255, 0, 109, 0.12);
	--ndt-home-ink: #101828;
	--ndt-home-muted: #667085;
	--ndt-home-soft: #F6F8FB;
	--ndt-home-white: #FFFFFF;
	--ndt-home-border: rgba(11, 31, 61, 0.12);
	--ndt-home-shadow: 0 24px 70px rgba(11, 31, 61, 0.14);
	--ndt-home-radius: 24px;
}

.ndt-home {
	background: #ffffff;
	color: var(--ndt-home-ink);
	overflow-x: hidden;
}

.ndt-home *,
.ndt-home *::before,
.ndt-home *::after,
.ndt-home-site-header *,
.ndt-home-site-header *::before,
.ndt-home-site-header *::after,
.ndt-home-site-footer *,
.ndt-home-site-footer *::before,
.ndt-home-site-footer *::after {
	box-sizing: border-box;
}

.ndt-home-wrap {
	width: min(1180px, calc(100% - 40px));
	margin: 0 auto;
}

.ndt-home h1,
.ndt-home h2,
.ndt-home h3,
.ndt-home p,
.ndt-home-site-footer h3,
.ndt-home-site-footer p {
	margin-top: 0;
}

.ndt-home h1,
.ndt-home h2,
.ndt-home h3 {
	color: var(--ndt-home-navy);
	line-height: 1.05;
	letter-spacing: -0.035em;
}

.ndt-home h1 {
	max-width: 760px;
	margin-bottom: 22px;
	font-size: clamp(42px, 6vw, 78px);
}

.ndt-home h2 {
	margin-bottom: 18px;
	font-size: clamp(32px, 4vw, 54px);
}

.ndt-home h3 {
	margin-bottom: 10px;
	font-size: 22px;
}

.ndt-home p {
	color: var(--ndt-home-muted);
	font-size: 17px;
	line-height: 1.65;
}

.ndt-home-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 16px;
	color: var(--ndt-home-pink) !important;
	font-size: 13px !important;
	font-weight: 800;
	line-height: 1.2 !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.ndt-home-eyebrow::before {
	content: "";
	width: 30px;
	height: 2px;
	border-radius: 999px;
	background: var(--ndt-home-pink);
}

/* =========================================================
   CUSTOM HOMEPAGE HEADER
   ========================================================= */

.ndt-home-site-header {
	position: sticky;
	top: 0;
	z-index: 999;
	border-bottom: 1px solid rgba(11, 31, 61, 0.1);
	background: rgba(255, 255, 255, 0.92);
	backdrop-filter: blur(16px);
}

.admin-bar .ndt-home-site-header {
	top: 32px;
}

.ndt-home-site-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 78px;
}

.ndt-home-brand {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	text-decoration: none;
	line-height: 1;
}

.ndt-home-brand:hover,
.ndt-home-brand:focus {
	text-decoration: none;
}

.ndt-home-logo-img {
	display: block;
	width: auto;
	max-width: 210px;
	height: auto;
	max-height: 58px;
}

.ndt-home-footer-logo-img {
	max-width: 220px;
	max-height: 64px;
}

.ndt-home-main-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 24px;
}

.ndt-home-main-nav a,
.ndt-home-header-login {
	color: var(--ndt-home-navy);
	font-size: 14px;
	font-weight: 800;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ndt-home-main-nav a:hover,
.ndt-home-main-nav a:focus,
.ndt-home-header-login:hover,
.ndt-home-header-login:focus {
	color: var(--ndt-home-pink);
	text-decoration: none;
}

.ndt-home-header-actions {
	display: flex;
	align-items: center;
	gap: 14px;
}

.ndt-home-header-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 11px 18px;
	border-radius: 999px;
	background: var(--ndt-home-pink);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 12px 28px rgba(255, 0, 109, 0.22);
}

.ndt-home-header-cta:hover,
.ndt-home-header-cta:focus {
	background: #e60061;
	color: #ffffff;
	text-decoration: none;
}

/* =========================================================
   BUTTONS
   ========================================================= */

.ndt-home-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 13px 22px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 800;
	line-height: 1;
	text-decoration: none;
	transition:
		transform 180ms ease,
		box-shadow 180ms ease,
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease;
}

.ndt-home-btn:hover,
.ndt-home-btn:focus {
	transform: translateY(-1px);
	text-decoration: none;
}

.ndt-home-btn-primary {
	background: var(--ndt-home-pink);
	color: #ffffff;
	box-shadow: 0 14px 34px rgba(255, 0, 109, 0.25);
}

.ndt-home-btn-primary:hover,
.ndt-home-btn-primary:focus {
	background: #e60061;
	color: #ffffff;
}

.ndt-home-btn-secondary {
	background: #ffffff;
	color: var(--ndt-home-navy);
	border-color: var(--ndt-home-border);
	box-shadow: 0 12px 28px rgba(11, 31, 61, 0.08);
}

.ndt-home-btn-secondary:hover,
.ndt-home-btn-secondary:focus {
	border-color: rgba(255, 0, 109, 0.35);
	color: var(--ndt-home-pink);
}

/* =========================================================
   HERO
   ========================================================= */

.ndt-home-hero {
	position: relative;
	padding: clamp(72px, 9vw, 120px) 0 clamp(64px, 8vw, 100px);
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.16), transparent 32%),
		linear-gradient(135deg, #ffffff 0%, #f7f9fc 52%, #eef3f9 100%);
}

.ndt-home-hero::after {
	content: "";
	position: absolute;
	right: -180px;
	top: 90px;
	width: 420px;
	height: 420px;
	border-radius: 999px;
	background: rgba(11, 31, 61, 0.06);
	pointer-events: none;
}

.ndt-home-hero-grid {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(340px, 0.85fr);
	gap: clamp(34px, 5vw, 72px);
	align-items: center;
}

.ndt-home-hero-subtitle {
	max-width: 720px;
	margin-bottom: 30px;
	font-size: clamp(18px, 2vw, 21px) !important;
	color: #475467 !important;
}

.ndt-home-proof-list {
	display: grid;
	gap: 14px;
	max-width: 720px;
}

.ndt-home-proof-list div {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

.ndt-home-proof-list span {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin-top: 4px;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--ndt-home-pink), #ff5ca2);
	box-shadow: 0 8px 20px rgba(255, 0, 109, 0.22);
}

.ndt-home-proof-list p {
	margin-bottom: 0;
	color: var(--ndt-home-navy);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.45;
}

.ndt-home-path-card {
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: var(--ndt-home-radius);
	background: rgba(255, 255, 255, 0.82);
	box-shadow: var(--ndt-home-shadow);
	backdrop-filter: blur(14px);
}

.ndt-home-path-header {
	margin-bottom: 18px;
}

.ndt-home-path-header h2 {
	margin-bottom: 0;
	font-size: 30px;
}

.ndt-home-path-option {
	display: grid;
	gap: 18px;
	padding: 22px;
	border: 1px solid var(--ndt-home-border);
	border-radius: 20px;
	background: #ffffff;
}

.ndt-home-path-option + .ndt-home-path-option {
	margin-top: 16px;
}

.ndt-home-path-option h3 {
	margin-bottom: 8px;
	font-size: 22px;
}

.ndt-home-path-option p {
	margin-bottom: 0;
	font-size: 15px;
	line-height: 1.55;
}

.ndt-home-path-option-primary {
	position: relative;
	border-color: rgba(255, 0, 109, 0.25);
	background:
		linear-gradient(180deg, rgba(255, 0, 109, 0.08), rgba(255, 255, 255, 1) 52%);
}

.ndt-home-path-option-primary::before {
	content: "Primary path";
	position: absolute;
	top: 16px;
	right: 16px;
	padding: 7px 10px;
	border-radius: 999px;
	background: var(--ndt-home-pink-soft);
	color: var(--ndt-home-pink);
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* =========================================================
   SHARED SECTIONS
   ========================================================= */

.ndt-home-section {
	padding: clamp(70px, 8vw, 110px) 0;
}

.ndt-home-section-header {
	max-width: 660px;
}

.ndt-home-section-header p {
	margin-bottom: 28px;
}

.ndt-home-section-header-centered {
	max-width: 820px;
	margin: 0 auto 44px;
	text-align: center;
}

.ndt-home-section-header-centered .ndt-home-eyebrow {
	justify-content: center;
}

.ndt-home-section-header-centered .ndt-home-eyebrow::after {
	content: "";
	width: 30px;
	height: 2px;
	border-radius: 999px;
	background: var(--ndt-home-pink);
}

/* =========================================================
   PLATFORM PREVIEW
   ========================================================= */

.ndt-home-platform {
	background: #ffffff;
}

.ndt-home-preview-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.55fr);
	gap: 28px;
	align-items: stretch;
}

.ndt-home-dashboard-mockup {
	overflow: hidden;
	min-height: 560px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 30px;
	background: var(--ndt-home-navy);
	box-shadow: var(--ndt-home-shadow);
}

.ndt-home-dashboard-topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 20px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.04);
}

.ndt-home-dashboard-dots {
	display: flex;
	gap: 8px;
}

.ndt-home-dashboard-dots span {
	width: 10px;
	height: 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.36);
}

.ndt-home-dashboard-topbar p {
	margin-bottom: 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-home-dashboard-body {
	display: grid;
	grid-template-columns: 118px minmax(0, 1fr);
	min-height: 462px;
}

.ndt-home-dashboard-sidebar {
	padding: 22px 18px;
	border-right: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.035);
}

.ndt-home-dashboard-sidebar span {
	display: block;
	height: 14px;
	margin-bottom: 18px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.18);
}

.ndt-home-dashboard-sidebar span:first-child {
	background: var(--ndt-home-pink);
}

.ndt-home-dashboard-main {
	display: grid;
	align-content: start;
	gap: 18px;
	padding: 24px;
}

.ndt-home-dashboard-card {
	padding: 18px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.08);
}

.ndt-home-dashboard-card strong {
	display: block;
	margin-bottom: 5px;
	color: #ffffff;
	font-size: 15px;
}

.ndt-home-dashboard-card small,
.ndt-home-dashboard-card p {
	margin-bottom: 0;
	color: rgba(255, 255, 255, 0.66);
	font-size: 13px;
	line-height: 1.4;
}

.ndt-home-dashboard-card-head {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 22px;
}

.ndt-home-dashboard-card-head b {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	border-radius: 999px;
	background: var(--ndt-home-pink);
	color: #ffffff;
	font-size: 18px;
}

.ndt-home-match-bars {
	display: grid;
	gap: 10px;
}

.ndt-home-match-bars span {
	display: block;
	height: 10px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--ndt-home-pink), rgba(255, 255, 255, 0.7));
}

.ndt-home-bar-94 {
	width: 94%;
}

.ndt-home-bar-82 {
	width: 82%;
}

.ndt-home-bar-72 {
	width: 72%;
}

.ndt-home-dashboard-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
}

.ndt-home-dashboard-table {
	display: grid;
	gap: 12px;
	padding: 18px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.06);
}

.ndt-home-dashboard-table span {
	display: block;
	height: 14px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.16);
}

.ndt-home-feature-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	align-content: center;
}

.ndt-home-feature-card {
	padding: 18px;
	border: 1px solid var(--ndt-home-border);
	border-radius: 18px;
	background: #ffffff;
	box-shadow: 0 10px 28px rgba(11, 31, 61, 0.06);
}

.ndt-home-feature-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	margin-bottom: 12px;
	border-radius: 12px;
	background: var(--ndt-home-pink-soft);
	color: var(--ndt-home-pink);
	font-size: 12px;
	font-weight: 900;
}

.ndt-home-feature-card h3 {
	margin-bottom: 6px;
	font-size: 18px;
}

.ndt-home-feature-card p {
	margin-bottom: 0;
	font-size: 14px;
	line-height: 1.45;
}

/* =========================================================
   FOUNDER SECTION
   ========================================================= */

.ndt-home-founder {
	background: var(--ndt-home-navy);
}

.ndt-home-founder-grid {
	display: grid;
	grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1fr);
	gap: clamp(34px, 5vw, 70px);
	align-items: center;
}

.ndt-home-founder-visual {
	min-height: 430px;
	padding: 18px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(255, 0, 109, 0.22), transparent 42%),
		rgba(255, 255, 255, 0.06);
}

.ndt-home-founder-visual > div {
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	width: 100%;
	height: 100%;
	min-height: 394px;
	padding: 22px;
	border-radius: 22px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02)),
		repeating-linear-gradient(
			135deg,
			rgba(255, 255, 255, 0.08) 0,
			rgba(255, 255, 255, 0.08) 1px,
			transparent 1px,
			transparent 16px
		);
}

.ndt-home-founder-visual span {
	display: inline-flex;
	padding: 9px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.12);
	color: #ffffff;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.ndt-home-founder-copy h2 {
	color: #ffffff;
}

.ndt-home-founder-copy p {
	color: rgba(255, 255, 255, 0.74);
}

.ndt-home-founder-copy .ndt-home-eyebrow {
	color: #ffffff !important;
}

.ndt-home-founder-copy .ndt-home-eyebrow::before {
	background: var(--ndt-home-pink);
}

/* =========================================================
   CONTACT SECTION
   ========================================================= */

.ndt-home-contact {
	background:
		radial-gradient(circle at top right, rgba(255, 0, 109, 0.10), transparent 34%),
		linear-gradient(135deg, #ffffff 0%, #f7f9fc 100%);
}

.ndt-home-contact-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
	gap: clamp(32px, 5vw, 70px);
	align-items: center;
}

.ndt-home-contact-copy {
	max-width: 700px;
}

.ndt-home-contact-copy p {
	max-width: 660px;
}

.ndt-home-contact-card {
	padding: clamp(24px, 4vw, 36px);
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 20px 60px rgba(11, 31, 61, 0.10);
}

.ndt-home-contact-item {
	display: grid;
	gap: 8px;
	padding: 0 0 22px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.10);
}

.ndt-home-contact-item + .ndt-home-contact-item {
	padding-top: 22px;
}

.ndt-home-contact-item span {
	color: var(--ndt-home-pink);
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.ndt-home-contact-item a {
	color: var(--ndt-home-navy);
	font-size: clamp(22px, 3vw, 30px);
	font-weight: 900;
	line-height: 1.15;
	text-decoration: none;
	letter-spacing: -0.03em;
}

.ndt-home-contact-item a:hover,
.ndt-home-contact-item a:focus {
	color: var(--ndt-home-pink);
	text-decoration: none;
}

.ndt-home-contact-note {
	margin: 22px 0 0;
	padding: 14px 16px;
	border-radius: 16px;
	background: rgba(255, 0, 109, 0.08);
	color: var(--ndt-home-muted);
	font-size: 14px !important;
	line-height: 1.5 !important;
}

/* =========================================================
   CUSTOM HOMEPAGE FOOTER
   ========================================================= */

.ndt-home-site-footer {
	background: var(--ndt-home-dark);
	color: #ffffff;
	padding: 64px 0 26px;
}

.ndt-home-footer-grid {
	display: grid;
	grid-template-columns: minmax(260px, 1.3fr) repeat(3, minmax(150px, 0.7fr));
	gap: 36px;
	padding-bottom: 42px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.ndt-home-footer-brand p {
	max-width: 360px;
	margin: 18px 0 0;
	color: rgba(255, 255, 255, 0.68);
	font-size: 15px;
	line-height: 1.6;
}

.ndt-home-footer-col {
	display: grid;
	align-content: start;
	gap: 12px;
}

.ndt-home-footer-col h3 {
	margin-bottom: 4px;
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.ndt-home-footer-col a {
	color: rgba(255, 255, 255, 0.68);
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
}

.ndt-home-socials {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 10px;
}

.ndt-home-socials a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.06);
	color: #ffffff;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
}

.ndt-home-socials a:hover,
.ndt-home-socials a:focus {
	border-color: var(--ndt-home-pink);
	background: var(--ndt-home-pink);
	color: #ffffff;
	text-decoration: none;
}

.ndt-home-footer-bottom {
	padding-top: 22px;
}

.ndt-home-footer-bottom p {
	margin: 0;
	color: rgba(255, 255, 255, 0.52);
	font-size: 14px;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1080px) {
	.ndt-home-main-nav {
		gap: 16px;
	}

	.ndt-home-main-nav a {
		font-size: 13px;
	}
}

@media (max-width: 980px) {
	.ndt-home-site-header-inner {
		align-items: flex-start;
		flex-direction: column;
		justify-content: center;
		gap: 16px;
		padding-top: 18px;
		padding-bottom: 18px;
	}

	.ndt-home-main-nav {
		justify-content: flex-start;
		flex-wrap: wrap;
		gap: 14px 18px;
	}

	.ndt-home-header-actions {
		width: 100%;
		justify-content: space-between;
	}

	.ndt-home-hero-grid,
	.ndt-home-preview-grid,
	.ndt-home-founder-grid,
	.ndt-home-contact-grid {
		grid-template-columns: 1fr;
	}

	.ndt-home-path-card {
		max-width: 680px;
	}

	.ndt-home-dashboard-mockup {
		min-height: auto;
	}

	.ndt-home-dashboard-body {
		min-height: 420px;
	}

	.ndt-home-feature-grid {
	grid-template-columns: 1fr 1fr;
	align-content: stretch;
    }

	.ndt-home-footer-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 782px) {
	.admin-bar .ndt-home-site-header {
		top: 46px;
	}
}

@media (max-width: 720px) {
	.ndt-home-wrap {
		width: min(100% - 28px, 1180px);
	}

	.ndt-home h1 {
		font-size: clamp(38px, 12vw, 54px);
	}

	.ndt-home h2 {
		font-size: clamp(30px, 9vw, 42px);
	}

	.ndt-home p {
		font-size: 16px;
	}

	.ndt-home-site-header {
		position: relative;
		top: auto;
	}

	.admin-bar .ndt-home-site-header {
		top: auto;
	}

	.ndt-home-header-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.ndt-home-header-login,
	.ndt-home-header-cta {
		width: 100%;
		justify-content: center;
		text-align: center;
	}

	.ndt-home-hero {
		padding-top: 58px;
	}

	.ndt-home-path-card,
	.ndt-home-path-option,
	.ndt-home-feature-card,
	.ndt-home-contact-card {
		border-radius: 20px;
	}

	.ndt-home-path-option-primary::before {
		position: static;
		width: fit-content;
		margin-bottom: -4px;
	}

	.ndt-home-feature-grid {
		grid-template-columns: 1fr;
	}

	.ndt-home-dashboard-body {
		grid-template-columns: 1fr;
	}

	.ndt-home-dashboard-sidebar {
		display: none;
	}

	.ndt-home-dashboard-row {
		grid-template-columns: 1fr;
	}

	.ndt-home-founder-visual {
		min-height: 320px;
	}

	.ndt-home-founder-visual > div {
		min-height: 284px;
	}

	.ndt-home-path-option .ndt-home-btn {
		width: 100%;
	}

	.ndt-home-contact-item a {
		font-size: 22px;
	}

	.ndt-home-footer-grid {
		grid-template-columns: 1fr;
	}

	.ndt-home-site-footer {
		padding-top: 48px;
	}
}

@media (max-width: 420px) {
	.ndt-home-wrap {
		width: min(100% - 24px, 1180px);
	}

	.ndt-home-path-card {
		padding: 18px;
	}

	.ndt-home-dashboard-main {
		padding: 16px;
	}

	.ndt-home-dashboard-card-head {
		flex-direction: column;
	}

	.ndt-home-dashboard-card-head b {
		width: 52px;
		height: 52px;
	}
}

/* =========================================================
   NDT Jobs Employer Getting Started Page
   ========================================================= */

.ndt-employers {
	--ndt-home-navy: #0B1F3D;
	--ndt-home-navy-2: #102C54;
	--ndt-home-dark: #07172E;
	--ndt-home-pink: #FF006D;
	--ndt-home-pink-soft: rgba(255, 0, 109, 0.12);
	--ndt-home-ink: #101828;
	--ndt-home-muted: #667085;
	--ndt-home-border: rgba(11, 31, 61, 0.12);
	--ndt-home-shadow: 0 24px 70px rgba(11, 31, 61, 0.14);

	background: #ffffff;
	color: var(--ndt-home-ink);
	overflow-x: hidden;
}

.ndt-employers *,
.ndt-employers *::before,
.ndt-employers *::after {
	box-sizing: border-box;
}

.ndt-employers h1,
.ndt-employers h2,
.ndt-employers h3,
.ndt-employers p {
	margin-top: 0;
}

.ndt-employers h1,
.ndt-employers h2,
.ndt-employers h3 {
	color: var(--ndt-home-navy);
	line-height: 1.05;
	letter-spacing: -0.035em;
}

.ndt-employers h1 {
	max-width: 760px;
	margin-bottom: 22px;
	font-size: clamp(42px, 6vw, 76px);
}

.ndt-employers h2 {
	margin-bottom: 18px;
	font-size: clamp(32px, 4vw, 54px);
}

.ndt-employers h3 {
	margin-bottom: 10px;
	font-size: 22px;
}

.ndt-employers p {
	color: var(--ndt-home-muted);
	font-size: 17px;
	line-height: 1.65;
}

.ndt-employer-section {
	padding: clamp(70px, 8vw, 110px) 0;
}

.ndt-employer-section-header {
	max-width: 780px;
	margin-bottom: 38px;
}

.ndt-employer-section-header-centered {
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.ndt-employer-section-header-centered .ndt-home-eyebrow {
	justify-content: center;
}

.ndt-employer-section-header-centered .ndt-home-eyebrow::after {
	content: "";
	width: 30px;
	height: 2px;
	border-radius: 999px;
	background: var(--ndt-home-pink);
}

/* Employer Hero */

.ndt-employer-hero {
	position: relative;
	padding: clamp(76px, 9vw, 124px) 0 clamp(70px, 8vw, 104px);
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.16), transparent 32%),
		linear-gradient(135deg, #ffffff 0%, #f7f9fc 50%, #eef3f9 100%);
}

.ndt-employer-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.7fr);
	gap: clamp(34px, 5vw, 72px);
	align-items: center;
}

.ndt-employer-hero-subtitle {
	max-width: 720px;
	margin-bottom: 28px;
	font-size: clamp(18px, 2vw, 21px) !important;
	color: #475467 !important;
}

.ndt-employer-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-bottom: 28px;
}

.ndt-employer-proof-list {
	display: grid;
	gap: 14px;
	max-width: 720px;
}

.ndt-employer-proof-list div {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

.ndt-employer-proof-list span {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin-top: 4px;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--ndt-home-pink), #ff5ca2);
	box-shadow: 0 8px 20px rgba(255, 0, 109, 0.22);
}

.ndt-employer-proof-list p {
	margin-bottom: 0;
	color: var(--ndt-home-navy);
	font-size: 16px;
	font-weight: 800;
	line-height: 1.45;
}

.ndt-employer-fit-card {
	padding: clamp(24px, 4vw, 34px);
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 28px;
	background: rgba(255, 255, 255, 0.86);
	box-shadow: var(--ndt-home-shadow);
	backdrop-filter: blur(14px);
}

.ndt-employer-fit-list {
	display: grid;
	gap: 12px;
}

.ndt-employer-fit-list span {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 16px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 16px;
	background: #ffffff;
	color: var(--ndt-home-navy);
	font-size: 15px;
	font-weight: 900;
	line-height: 1.2;
}

.ndt-employer-fit-list span::after {
	content: "";
	width: 9px;
	height: 9px;
	border-radius: 999px;
	background: var(--ndt-home-pink);
}

/* Problem */

.ndt-employer-problem {
	background: #ffffff;
}

.ndt-employer-card-grid {
	display: grid;
	gap: 18px;
}

.ndt-employer-card-grid-three {
	grid-template-columns: repeat(3, 1fr);
}

.ndt-employer-info-card {
	padding: 26px;
	border: 1px solid var(--ndt-home-border);
	border-radius: 22px;
	background: #ffffff;
	box-shadow: 0 14px 40px rgba(11, 31, 61, 0.07);
}

.ndt-employer-info-card p {
	margin-bottom: 0;
	font-size: 15px;
}

/* Product Workflow */

.ndt-employer-product {
	background:
		linear-gradient(135deg, #f7f9fc 0%, #ffffff 48%, #f4f7fb 100%);
}

.ndt-employer-product-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
	gap: clamp(34px, 5vw, 70px);
	align-items: center;
}

.ndt-employer-dashboard-mockup {
	overflow: hidden;
	min-height: 520px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 30px;
	background: var(--ndt-home-navy);
	box-shadow: var(--ndt-home-shadow);
}

.ndt-employer-dashboard-topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 20px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.04);
}

.ndt-employer-dashboard-dots {
	display: flex;
	gap: 8px;
}

.ndt-employer-dashboard-dots span {
	width: 10px;
	height: 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.36);
}

.ndt-employer-dashboard-topbar p {
	margin-bottom: 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-employer-dashboard-body {
	display: grid;
	gap: 18px;
	padding: 26px;
}

.ndt-employer-dashboard-panel,
.ndt-employer-dashboard-stats div,
.ndt-employer-dashboard-list {
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.08);
}

.ndt-employer-dashboard-main-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 22px;
}

.ndt-employer-dashboard-main-card strong {
	display: block;
	margin-bottom: 6px;
	color: #ffffff;
	font-size: 18px;
}

.ndt-employer-dashboard-main-card small {
	color: rgba(255, 255, 255, 0.66);
	font-size: 13px;
	font-weight: 700;
}

.ndt-employer-dashboard-main-card b {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 68px;
	height: 68px;
	border-radius: 999px;
	background: var(--ndt-home-pink);
	color: #ffffff;
	font-size: 20px;
}

.ndt-employer-dashboard-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
}

.ndt-employer-dashboard-stats div {
	padding: 18px;
}

.ndt-employer-dashboard-stats strong {
	display: block;
	margin-bottom: 8px;
	color: rgba(255, 255, 255, 0.62);
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.ndt-employer-dashboard-stats span {
	color: #ffffff;
	font-size: 16px;
	font-weight: 900;
}

.ndt-employer-dashboard-list {
	display: grid;
	gap: 14px;
	padding: 20px;
}

.ndt-employer-dashboard-list span {
	display: block;
	height: 14px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.16);
}

.ndt-employer-dashboard-list span:first-child {
	width: 92%;
}

.ndt-employer-dashboard-list span:nth-child(2) {
	width: 76%;
}

.ndt-employer-dashboard-list span:nth-child(3) {
	width: 84%;
}

.ndt-employer-product-copy > p {
	max-width: 680px;
}

.ndt-employer-feature-list {
	display: grid;
	gap: 16px;
	margin-top: 26px;
}

.ndt-employer-feature-list div {
	padding: 20px;
	border: 1px solid var(--ndt-home-border);
	border-radius: 18px;
	background: #ffffff;
	box-shadow: 0 12px 34px rgba(11, 31, 61, 0.06);
}

.ndt-employer-feature-list h3 {
	margin-bottom: 6px;
	font-size: 19px;
}

.ndt-employer-feature-list p {
	margin-bottom: 0;
	font-size: 15px;
	line-height: 1.55;
}

/* Steps */

.ndt-employer-steps {
	background: #ffffff;
}

.ndt-employer-step-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.ndt-employer-step-card {
	padding: 28px;
	border: 1px solid var(--ndt-home-border);
	border-radius: 24px;
	background: #ffffff;
	box-shadow: 0 14px 40px rgba(11, 31, 61, 0.07);
}

.ndt-employer-step-card span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	margin-bottom: 20px;
	border-radius: 14px;
	background: var(--ndt-home-pink-soft);
	color: var(--ndt-home-pink);
	font-size: 13px;
	font-weight: 900;
}

.ndt-employer-step-card p {
	margin-bottom: 0;
	font-size: 15px;
}

/* Trust */

.ndt-employer-trust {
	background: var(--ndt-home-navy);
}

.ndt-employer-trust-card {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
	gap: clamp(30px, 5vw, 70px);
	align-items: center;
}

.ndt-employer-trust h2 {
	color: #ffffff;
}

.ndt-employer-trust p {
	color: rgba(255, 255, 255, 0.74);
}

.ndt-employer-trust .ndt-home-eyebrow {
	color: #ffffff !important;
}

.ndt-employer-trust blockquote {
	margin: 24px 0 0;
	padding: 22px 24px;
	border-left: 4px solid var(--ndt-home-pink);
	border-radius: 0 18px 18px 0;
	background: rgba(255, 255, 255, 0.07);
	color: #ffffff;
	font-size: clamp(22px, 3vw, 32px);
	font-weight: 900;
	line-height: 1.2;
	letter-spacing: -0.035em;
}

/* Contact */

.ndt-employer-contact {
	background:
		radial-gradient(circle at top right, rgba(255, 0, 109, 0.10), transparent 34%),
		linear-gradient(135deg, #ffffff 0%, #f7f9fc 100%);
}

.ndt-employer-contact-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
	gap: clamp(32px, 5vw, 70px);
	align-items: center;
}

.ndt-employer-contact-card {
	padding: clamp(24px, 4vw, 36px);
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 20px 60px rgba(11, 31, 61, 0.10);
}

.ndt-employer-contact-card div {
	display: grid;
	gap: 8px;
	padding-bottom: 22px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.1);
}

.ndt-employer-contact-card div + div {
	padding-top: 22px;
}

.ndt-employer-contact-card span {
	color: var(--ndt-home-pink);
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.ndt-employer-contact-card a {
	color: var(--ndt-home-navy);
	font-size: clamp(22px, 3vw, 30px);
	font-weight: 900;
	line-height: 1.15;
	text-decoration: none;
	letter-spacing: -0.03em;
}

/* Responsive */

@media (max-width: 980px) {
	.ndt-employer-hero-grid,
	.ndt-employer-product-grid,
	.ndt-employer-trust-card,
	.ndt-employer-contact-grid {
		grid-template-columns: 1fr;
	}

	.ndt-employer-card-grid-three,
	.ndt-employer-step-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	.ndt-employers h1 {
		font-size: clamp(38px, 12vw, 54px);
	}

	.ndt-employers h2 {
		font-size: clamp(30px, 9vw, 42px);
	}

	.ndt-employer-actions {
		width: 100%;
	}

	.ndt-employer-actions .ndt-home-btn {
		width: 100%;
	}

	.ndt-employer-dashboard-stats {
		grid-template-columns: 1fr;
	}

	.ndt-employer-dashboard-main-card {
		align-items: flex-start;
		flex-direction: column;
	}

	.ndt-employer-fit-card,
	.ndt-employer-info-card,
	.ndt-employer-step-card,
	.ndt-employer-contact-card {
		border-radius: 20px;
	}

	.ndt-employer-contact-card a {
		font-size: 22px;
	}
}

/* =========================================================
   NDT Jobs Candidate Getting Started Page
   ========================================================= */

.ndt-candidates {
	--ndt-home-navy: #0B1F3D;
	--ndt-home-navy-2: #102C54;
	--ndt-home-dark: #07172E;
	--ndt-home-pink: #FF006D;
	--ndt-home-pink-soft: rgba(255, 0, 109, 0.12);
	--ndt-home-ink: #101828;
	--ndt-home-muted: #667085;
	--ndt-home-border: rgba(11, 31, 61, 0.12);
	--ndt-home-shadow: 0 24px 70px rgba(11, 31, 61, 0.14);

	background: #ffffff;
	color: var(--ndt-home-ink);
	overflow-x: hidden;
}

.ndt-candidates *,
.ndt-candidates *::before,
.ndt-candidates *::after {
	box-sizing: border-box;
}

.ndt-candidates h1,
.ndt-candidates h2,
.ndt-candidates h3,
.ndt-candidates p {
	margin-top: 0;
}

.ndt-candidates h1,
.ndt-candidates h2,
.ndt-candidates h3 {
	color: var(--ndt-home-navy);
	line-height: 1.05;
	letter-spacing: -0.035em;
}

.ndt-candidates h1 {
	max-width: 800px;
	margin-bottom: 22px;
	font-size: clamp(42px, 6vw, 76px);
}

.ndt-candidates h2 {
	margin-bottom: 18px;
	font-size: clamp(32px, 4vw, 54px);
}

.ndt-candidates h3 {
	margin-bottom: 10px;
	font-size: 22px;
}

.ndt-candidates p {
	color: var(--ndt-home-muted);
	font-size: 17px;
	line-height: 1.65;
}

.ndt-candidate-section {
	padding: clamp(70px, 8vw, 110px) 0;
}

.ndt-candidate-section-header {
	max-width: 780px;
	margin-bottom: 38px;
}

.ndt-candidate-section-header-centered {
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.ndt-candidate-section-header-centered .ndt-home-eyebrow {
	justify-content: center;
}

.ndt-candidate-section-header-centered .ndt-home-eyebrow::after {
	content: "";
	width: 30px;
	height: 2px;
	border-radius: 999px;
	background: var(--ndt-home-pink);
}

/* Candidate Hero */

.ndt-candidate-hero {
	position: relative;
	padding: clamp(76px, 9vw, 124px) 0 clamp(70px, 8vw, 104px);
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.16), transparent 32%),
		linear-gradient(135deg, #ffffff 0%, #f7f9fc 50%, #eef3f9 100%);
}

.ndt-candidate-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.7fr);
	gap: clamp(34px, 5vw, 72px);
	align-items: center;
}

.ndt-candidate-hero-subtitle {
	max-width: 740px;
	margin-bottom: 28px;
	font-size: clamp(18px, 2vw, 21px) !important;
	color: #475467 !important;
}

.ndt-candidate-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-bottom: 28px;
}

.ndt-candidate-proof-list {
	display: grid;
	gap: 14px;
	max-width: 720px;
}

.ndt-candidate-proof-list div {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

.ndt-candidate-proof-list span {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin-top: 4px;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--ndt-home-pink), #ff5ca2);
	box-shadow: 0 8px 20px rgba(255, 0, 109, 0.22);
}

.ndt-candidate-proof-list p {
	margin-bottom: 0;
	color: var(--ndt-home-navy);
	font-size: 16px;
	font-weight: 800;
	line-height: 1.45;
}

.ndt-candidate-profile-card {
	padding: clamp(24px, 4vw, 34px);
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 28px;
	background: rgba(255, 255, 255, 0.86);
	box-shadow: var(--ndt-home-shadow);
	backdrop-filter: blur(14px);
}

.ndt-candidate-profile-preview {
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 22px;
	background: #ffffff;
}

.ndt-candidate-profile-top {
	display: flex;
	gap: 14px;
	align-items: center;
	padding-bottom: 18px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.1);
}

.ndt-candidate-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 16px;
	background: var(--ndt-home-navy);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
}

.ndt-candidate-profile-top strong {
	display: block;
	margin-bottom: 5px;
	color: var(--ndt-home-navy);
	font-size: 18px;
}

.ndt-candidate-profile-top span {
	color: var(--ndt-home-pink);
	font-size: 13px;
	font-weight: 900;
}

.ndt-candidate-profile-items {
	display: grid;
	gap: 12px;
	padding-top: 18px;
}

.ndt-candidate-profile-items div {
	display: flex;
	align-items: center;
	gap: 10px;
}

.ndt-candidate-profile-items span {
	width: 11px;
	height: 11px;
	border-radius: 999px;
	background: var(--ndt-home-pink);
}

.ndt-candidate-profile-items p {
	margin-bottom: 0;
	color: var(--ndt-home-navy);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.35;
}

/* Problem */

.ndt-candidate-problem {
	background: #ffffff;
}

.ndt-candidate-card-grid {
	display: grid;
	gap: 18px;
}

.ndt-candidate-card-grid-three {
	grid-template-columns: repeat(3, 1fr);
}

.ndt-candidate-info-card {
	padding: 26px;
	border: 1px solid var(--ndt-home-border);
	border-radius: 22px;
	background: #ffffff;
	box-shadow: 0 14px 40px rgba(11, 31, 61, 0.07);
}

.ndt-candidate-info-card p {
	margin-bottom: 0;
	font-size: 15px;
}

/* Product */

.ndt-candidate-product {
	background:
		linear-gradient(135deg, #f7f9fc 0%, #ffffff 48%, #f4f7fb 100%);
}

.ndt-candidate-product-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
	gap: clamp(34px, 5vw, 70px);
	align-items: center;
}

.ndt-candidate-dashboard-mockup {
	overflow: hidden;
	min-height: 520px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 30px;
	background: var(--ndt-home-navy);
	box-shadow: var(--ndt-home-shadow);
}

.ndt-candidate-dashboard-topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 20px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.04);
}

.ndt-candidate-dashboard-dots {
	display: flex;
	gap: 8px;
}

.ndt-candidate-dashboard-dots span {
	width: 10px;
	height: 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.36);
}

.ndt-candidate-dashboard-topbar p {
	margin-bottom: 0;
	color: rgba(255, 255, 255, 0.78);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-candidate-dashboard-body {
	display: grid;
	gap: 18px;
	padding: 26px;
}

.ndt-candidate-dashboard-main-card,
.ndt-candidate-dashboard-stats div,
.ndt-candidate-dashboard-list {
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.08);
}

.ndt-candidate-dashboard-main-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 22px;
}

.ndt-candidate-dashboard-main-card strong {
	display: block;
	margin-bottom: 6px;
	color: #ffffff;
	font-size: 18px;
}

.ndt-candidate-dashboard-main-card small {
	color: rgba(255, 255, 255, 0.66);
	font-size: 13px;
	font-weight: 700;
}

.ndt-candidate-dashboard-main-card b {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 68px;
	height: 68px;
	border-radius: 999px;
	background: var(--ndt-home-pink);
	color: #ffffff;
	font-size: 20px;
}

.ndt-candidate-dashboard-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
}

.ndt-candidate-dashboard-stats div {
	padding: 18px;
}

.ndt-candidate-dashboard-stats strong {
	display: block;
	margin-bottom: 8px;
	color: rgba(255, 255, 255, 0.62);
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.ndt-candidate-dashboard-stats span {
	color: #ffffff;
	font-size: 16px;
	font-weight: 900;
}

.ndt-candidate-dashboard-list {
	display: grid;
	gap: 14px;
	padding: 20px;
}

.ndt-candidate-dashboard-list span {
	display: block;
	height: 14px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.16);
}

.ndt-candidate-dashboard-list span:first-child {
	width: 92%;
}

.ndt-candidate-dashboard-list span:nth-child(2) {
	width: 76%;
}

.ndt-candidate-dashboard-list span:nth-child(3) {
	width: 84%;
}

.ndt-candidate-product-copy > p {
	max-width: 680px;
}

.ndt-candidate-feature-list {
	display: grid;
	gap: 16px;
	margin-top: 26px;
}

.ndt-candidate-feature-list div {
	padding: 20px;
	border: 1px solid var(--ndt-home-border);
	border-radius: 18px;
	background: #ffffff;
	box-shadow: 0 12px 34px rgba(11, 31, 61, 0.06);
}

.ndt-candidate-feature-list h3 {
	margin-bottom: 6px;
	font-size: 19px;
}

.ndt-candidate-feature-list p {
	margin-bottom: 0;
	font-size: 15px;
	line-height: 1.55;
}

/* Steps */

.ndt-candidate-steps {
	background: #ffffff;
}

.ndt-candidate-step-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.ndt-candidate-step-card {
	padding: 28px;
	border: 1px solid var(--ndt-home-border);
	border-radius: 24px;
	background: #ffffff;
	box-shadow: 0 14px 40px rgba(11, 31, 61, 0.07);
}

.ndt-candidate-step-card span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	margin-bottom: 20px;
	border-radius: 14px;
	background: var(--ndt-home-pink-soft);
	color: var(--ndt-home-pink);
	font-size: 13px;
	font-weight: 900;
}

.ndt-candidate-step-card p {
	margin-bottom: 0;
	font-size: 15px;
}

/* Trust */

.ndt-candidate-trust {
	background: var(--ndt-home-navy);
}

.ndt-candidate-trust-card {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
	gap: clamp(30px, 5vw, 70px);
	align-items: center;
}

.ndt-candidate-trust h2 {
	color: #ffffff;
}

.ndt-candidate-trust p {
	color: rgba(255, 255, 255, 0.74);
}

.ndt-candidate-trust .ndt-home-eyebrow {
	color: #ffffff !important;
}

.ndt-candidate-trust blockquote {
	margin: 24px 0 0;
	padding: 22px 24px;
	border-left: 4px solid var(--ndt-home-pink);
	border-radius: 0 18px 18px 0;
	background: rgba(255, 255, 255, 0.07);
	color: #ffffff;
	font-size: clamp(22px, 3vw, 32px);
	font-weight: 900;
	line-height: 1.2;
	letter-spacing: -0.035em;
}

/* Contact */

.ndt-candidate-contact {
	background:
		radial-gradient(circle at top right, rgba(255, 0, 109, 0.10), transparent 34%),
		linear-gradient(135deg, #ffffff 0%, #f7f9fc 100%);
}

.ndt-candidate-contact-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
	gap: clamp(32px, 5vw, 70px);
	align-items: center;
}

.ndt-candidate-contact-card {
	padding: clamp(24px, 4vw, 36px);
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 20px 60px rgba(11, 31, 61, 0.10);
}

.ndt-candidate-contact-card div {
	display: grid;
	gap: 8px;
	padding-bottom: 22px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.1);
}

.ndt-candidate-contact-card div + div {
	padding-top: 22px;
}

.ndt-candidate-contact-card span {
	color: var(--ndt-home-pink);
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.ndt-candidate-contact-card a {
	color: var(--ndt-home-navy);
	font-size: clamp(22px, 3vw, 30px);
	font-weight: 900;
	line-height: 1.15;
	text-decoration: none;
	letter-spacing: -0.03em;
}

/* Responsive */

@media (max-width: 980px) {
	.ndt-candidate-hero-grid,
	.ndt-candidate-product-grid,
	.ndt-candidate-trust-card,
	.ndt-candidate-contact-grid {
		grid-template-columns: 1fr;
	}

	.ndt-candidate-card-grid-three,
	.ndt-candidate-step-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	.ndt-candidates h1 {
		font-size: clamp(38px, 12vw, 54px);
	}

	.ndt-candidates h2 {
		font-size: clamp(30px, 9vw, 42px);
	}

	.ndt-candidate-actions {
		width: 100%;
	}

	.ndt-candidate-actions .ndt-home-btn {
		width: 100%;
	}

	.ndt-candidate-dashboard-stats {
		grid-template-columns: 1fr;
	}

	.ndt-candidate-dashboard-main-card {
		align-items: flex-start;
		flex-direction: column;
	}

	.ndt-candidate-profile-card,
	.ndt-candidate-info-card,
	.ndt-candidate-step-card,
	.ndt-candidate-contact-card {
		border-radius: 20px;
	}

	.ndt-candidate-contact-card a {
		font-size: 22px;
	}
}

/* =========================================================
   NDT Jobs Candidate Dashboard
   ========================================================= */

.ndt-candidate-dashboard {
	--ndt-home-navy: #0B1F3D;
	--ndt-home-navy-2: #102C54;
	--ndt-home-dark: #07172E;
	--ndt-home-pink: #FF006D;
	--ndt-home-pink-soft: rgba(255, 0, 109, 0.12);
	--ndt-home-ink: #101828;
	--ndt-home-muted: #667085;
	--ndt-home-border: rgba(11, 31, 61, 0.12);
	--ndt-home-shadow: 0 24px 70px rgba(11, 31, 61, 0.14);

	background: #f7f9fc;
	color: var(--ndt-home-ink);
	overflow-x: hidden;
}

.ndt-candidate-dashboard *,
.ndt-candidate-dashboard *::before,
.ndt-candidate-dashboard *::after {
	box-sizing: border-box;
}

.ndt-candidate-dashboard h1,
.ndt-candidate-dashboard h2,
.ndt-candidate-dashboard h3,
.ndt-candidate-dashboard p {
	margin-top: 0;
}

.ndt-candidate-dashboard h1,
.ndt-candidate-dashboard h2,
.ndt-candidate-dashboard h3 {
	color: var(--ndt-home-navy);
	line-height: 1.08;
	letter-spacing: -0.035em;
}

.ndt-candidate-dashboard h1 {
	max-width: 820px;
	margin-bottom: 18px;
	font-size: clamp(38px, 5vw, 64px);
}

.ndt-candidate-dashboard h2 {
	margin-bottom: 8px;
	font-size: clamp(22px, 2.4vw, 28px);
}

.ndt-candidate-dashboard h3 {
	margin-bottom: 8px;
	font-size: 22px;
}

.ndt-candidate-dashboard p {
	color: var(--ndt-home-muted);
	font-size: 16px;
	line-height: 1.6;
}

/* Hero */

.ndt-dash-hero {
	padding: clamp(54px, 7vw, 92px) 0 42px;
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.14), transparent 34%),
		linear-gradient(135deg, #ffffff 0%, #f7f9fc 58%, #eef3f9 100%);
}

.ndt-dash-hero-inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 28px;
	align-items: end;
}

.ndt-dash-hero-copy p:last-child {
	max-width: 720px;
	margin-bottom: 0;
	font-size: clamp(17px, 2vw, 20px);
}

.ndt-dash-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: flex-end;
}

/* Main dashboard area */

.ndt-dash-main {
	padding: 30px 0 clamp(70px, 8vw, 110px);
}

.ndt-dash-tabs {
	position: sticky;
	top: 78px;
	z-index: 40;
	display: flex;
	gap: 10px;
	align-items: center;
	margin-bottom: 24px;
	padding: 12px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 16px 42px rgba(11, 31, 61, 0.08);
	backdrop-filter: blur(14px);
	overflow-x: auto;
}

.admin-bar .ndt-dash-tabs {
	top: 110px;
}

.ndt-dash-tabs a {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 10px 14px;
	border-radius: 999px;
	color: var(--ndt-home-navy);
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ndt-dash-tabs a:hover,
.ndt-dash-tabs a:focus {
	background: var(--ndt-home-pink-soft);
	color: var(--ndt-home-pink);
	text-decoration: none;
}

/* Cards */

.ndt-dash-card {
	border: 1px solid rgba(11, 31, 61, 0.08);
	border-radius: 24px;
	background: #ffffff;
	box-shadow: 0 10px 28px rgba(11, 31, 61, 0.05);
	overflow: hidden;
}

.ndt-dash-card-header {
	padding: 20px 22px 14px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.06);
	background: #ffffff;
}

.ndt-dash-card-header h2 {
	margin-bottom: 8px;
}

.ndt-dash-card-header p {
	margin-bottom: 0;
	font-size: 15px;
	line-height: 1.5;
}

.ndt-dash-shortcode {
	padding: 18px;
}

/* Top status grid */

.ndt-dash-status-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-bottom: 18px;
	align-items: stretch;
}

/* Quick links */

.ndt-dash-quick-actions-card {
	margin-bottom: 18px;
}

.ndt-candidate-quick-links {
	padding: 22px;
}

.ndt-candidate-quick-links-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	max-width: none;
	margin-bottom: 20px;
}

.ndt-candidate-quick-links-header h3 {
	flex: 0 0 auto;
	margin-bottom: 0;
	font-size: 22px;
}

.ndt-candidate-quick-links-header p {
	max-width: 680px;
	margin-bottom: 0;
	font-size: 15px;
}

.ndt-candidate-quick-links-header p {
	margin-bottom: 0;
}

.ndt-candidate-quick-links-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
}

.ndt-candidate-quick-link-card {
	display: grid;
	gap: 8px;
	min-height: 142px;
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 20px;
	background: #ffffff;
	color: var(--ndt-home-navy);
	text-decoration: none;
	box-shadow: 0 12px 30px rgba(11, 31, 61, 0.06);
	transition:
		transform 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease;
}

.ndt-candidate-quick-link-card:hover,
.ndt-candidate-quick-link-card:focus {
	transform: translateY(-2px);
	border-color: rgba(255, 0, 109, 0.32);
	box-shadow: 0 16px 38px rgba(11, 31, 61, 0.1);
	text-decoration: none;
}

.ndt-candidate-quick-link-card span {
	color: var(--ndt-home-navy);
	font-size: 17px;
	font-weight: 900;
	line-height: 1.2;
}

.ndt-candidate-quick-link-card small {
	color: var(--ndt-home-muted);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.45;
}

.ndt-candidate-quick-link-primary {
	border-color: rgba(255, 0, 109, 0.26);
	background:
		linear-gradient(180deg, rgba(255, 0, 109, 0.08), #ffffff 58%);
}

.ndt-candidate-quick-link-primary span {
	color: var(--ndt-home-pink);
}

/* Main content layout */

.ndt-dash-content-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.42fr);
	gap: 18px;
	margin-bottom: 18px;
}

.ndt-dash-content-main,
.ndt-dash-content-side {
	display: grid;
	gap: 18px;
	align-content: start;
}

.ndt-dash-applications-card {
	margin-top: 0;
}

/* Make shortcode content behave better inside cards */

.ndt-dash-shortcode > *:first-child {
	margin-top: 0;
}

.ndt-dash-shortcode > *:last-child {
	margin-bottom: 0;
}

.ndt-dash-shortcode table {
	width: 100%;
	border-collapse: collapse;
}

.ndt-dash-shortcode img,
.ndt-dash-shortcode iframe {
	max-width: 100%;
	height: auto;
}

/* Try to normalize shortcode buttons without being too aggressive */

.ndt-candidate-dashboard .ndt-dash-shortcode a.button,
.ndt-candidate-dashboard .ndt-dash-shortcode button,
.ndt-candidate-dashboard .ndt-dash-shortcode input[type="submit"] {
	border-radius: 999px;
}

/* Responsive */

@media (max-width: 1100px) {
	.ndt-dash-status-grid {
		grid-template-columns: 1fr;
	}

	.ndt-candidate-quick-links-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.ndt-dash-content-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 782px) {
	.admin-bar .ndt-dash-tabs {
		top: 124px;
	}
}

@media (max-width: 720px) {
	.ndt-dash-hero-inner {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.ndt-dash-hero-actions {
		justify-content: flex-start;
	}

	.ndt-dash-hero-actions .ndt-home-btn {
		width: 100%;
	}

	.ndt-dash-tabs {
		position: relative;
		top: auto;
		margin-right: -14px;
		margin-left: -14px;
		border-right: 0;
		border-left: 0;
		border-radius: 0;
	}

	.admin-bar .ndt-dash-tabs {
		top: auto;
	}

	.ndt-dash-card {
		border-radius: 20px;
	}

	.ndt-dash-card-header,
	.ndt-dash-shortcode,
	.ndt-candidate-quick-links {
		padding: 20px;
	}

	.ndt-candidate-quick-links-grid {
		grid-template-columns: 1fr;
	}

	.ndt-candidate-dashboard h1 {
		font-size: clamp(36px, 11vw, 52px);
	}

	.ndt-candidate-dashboard h2 {
		font-size: 26px;
	}
	
	.ndt-candidate-quick-links-header {
	display: block;
}

.ndt-candidate-quick-links-header h3 {
	margin-bottom: 8px;
}
}

/* Compact dashboard version of Certifications Summary */

.ndt-dash-cert-summary-mini {
	display: grid;
	grid-template-columns: minmax(160px, 0.35fr) minmax(0, 1fr) auto;
	gap: 18px;
	align-items: center;
	padding: 6px;
}

.ndt-dash-cert-summary-stat {
	display: grid;
	place-items: center;
	min-height: 118px;
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #f7f9fc;
	text-align: center;
}

.ndt-dash-cert-summary-stat strong {
	display: block;
	margin-bottom: 6px;
	color: var(--ndt-home-navy);
	font-size: 44px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: -0.04em;
}

.ndt-dash-cert-summary-stat span {
	color: #5b6b84;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-dash-cert-summary-copy p {
	margin-bottom: 0;
	color: var(--ndt-home-muted);
	font-size: 15px;
	line-height: 1.55;
}

.ndt-dash-cert-summary-actions {
	display: flex;
	justify-content: flex-end;
}

.ndt-dash-cert-summary-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 12px 18px;
	border-radius: 999px;
	background: var(--ndt-home-navy);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ndt-dash-cert-summary-actions a:hover,
.ndt-dash-cert-summary-actions a:focus {
	background: var(--ndt-home-pink);
	color: #ffffff;
	text-decoration: none;
}

@media (max-width: 820px) {
	.ndt-dash-cert-summary-mini {
		grid-template-columns: 1fr;
	}

	.ndt-dash-cert-summary-actions {
		justify-content: stretch;
	}

	.ndt-dash-cert-summary-actions a {
		width: 100%;
	}
}

/* Compact dashboard version of My Applications */

.ndt-dash-applications-mini {
	display: grid;
	gap: 14px;
}

.ndt-dash-applications-empty {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 22px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-dash-applications-empty p {
	margin-bottom: 0;
	color: var(--ndt-home-muted);
	font-size: 15px;
}

.ndt-dash-applications-empty a,
.ndt-dash-application-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 11px 18px;
	border-radius: 999px;
	background: var(--ndt-home-navy);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ndt-dash-applications-empty a:hover,
.ndt-dash-applications-empty a:focus,
.ndt-dash-application-actions a:hover,
.ndt-dash-application-actions a:focus {
	background: var(--ndt-home-pink);
	color: #ffffff;
	text-decoration: none;
}

.ndt-dash-applications-list {
	display: grid;
	gap: 12px;
}

.ndt-dash-application-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 18px;
	align-items: center;
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #ffffff;
	box-shadow: 0 10px 28px rgba(11, 31, 61, 0.04);
}

.ndt-dash-application-main h3 {
	margin-bottom: 6px;
	color: var(--ndt-home-navy);
	font-size: 20px;
	line-height: 1.2;
	letter-spacing: -0.025em;
}

.ndt-dash-application-main p {
	margin-bottom: 10px;
	color: var(--ndt-home-muted);
	font-size: 14px;
	line-height: 1.4;
}

.ndt-dash-application-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.ndt-dash-application-meta span {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 7px 10px;
	border-radius: 999px;
	background: #f7f9fc;
	color: var(--ndt-home-navy);
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
}

@media (max-width: 720px) {
	.ndt-dash-applications-empty,
	.ndt-dash-application-row {
		grid-template-columns: 1fr;
	}

	.ndt-dash-applications-empty {
		align-items: stretch;
		flex-direction: column;
	}

	.ndt-dash-applications-empty a,
	.ndt-dash-application-actions a {
		width: 100%;
	}
}

/* Compact dashboard version of Recommended Jobs */

.ndt-dash-recommended-list {
	display: grid;
	gap: 12px;
}

.ndt-dash-recommended-job {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 16px;
	align-items: center;
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #ffffff;
	box-shadow: 0 10px 28px rgba(11, 31, 61, 0.04);
}

.ndt-dash-recommended-job-main h3 {
	margin-bottom: 6px;
	font-size: 18px;
	line-height: 1.2;
	letter-spacing: -0.025em;
}

.ndt-dash-recommended-job-main h3 a {
	color: var(--ndt-home-navy);
	text-decoration: none;
}

.ndt-dash-recommended-job-main h3 a:hover,
.ndt-dash-recommended-job-main h3 a:focus {
	color: var(--ndt-home-pink);
	text-decoration: none;
}

.ndt-dash-recommended-job-main p {
	margin-bottom: 10px;
	color: var(--ndt-home-muted);
	font-size: 14px;
	line-height: 1.4;
}

.ndt-dash-recommended-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.ndt-dash-recommended-meta span {
	display: inline-flex;
	align-items: center;
	min-height: 26px;
	padding: 7px 10px;
	border-radius: 999px;
	background: #f7f9fc;
	color: var(--ndt-home-navy);
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
}

.ndt-dash-recommended-score {
	display: grid;
	place-items: center;
	min-width: 74px;
	min-height: 74px;
	padding: 10px;
	border-radius: 18px;
	background: var(--ndt-home-pink-soft);
	text-align: center;
}

.ndt-dash-recommended-score strong {
	display: block;
	color: var(--ndt-home-pink);
	font-size: 24px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: -0.04em;
}

.ndt-dash-recommended-score span {
	margin-top: 5px;
	color: var(--ndt-home-pink);
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.ndt-dash-recommended-empty {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 22px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-dash-recommended-empty p {
	margin-bottom: 0;
	color: var(--ndt-home-muted);
	font-size: 15px;
}

.ndt-dash-recommended-empty a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 11px 18px;
	border-radius: 999px;
	background: var(--ndt-home-navy);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ndt-dash-recommended-empty a:hover,
.ndt-dash-recommended-empty a:focus {
	background: var(--ndt-home-pink);
	color: #ffffff;
	text-decoration: none;
}

.ndt-dash-recommended-debug {
	grid-column: 1 / -1;
	max-height: 260px;
	overflow: auto;
	margin: 0;
	padding: 14px;
	border-radius: 14px;
	background: #111;
	color: #0f0;
	font-size: 12px;
	white-space: pre-wrap;
}

@media (max-width: 720px) {
	.ndt-dash-recommended-job,
	.ndt-dash-recommended-empty {
		grid-template-columns: 1fr;
	}

	.ndt-dash-recommended-score {
		place-items: start;
		width: 100%;
		min-height: auto;
	}

	.ndt-dash-recommended-empty {
		align-items: stretch;
		flex-direction: column;
	}

	.ndt-dash-recommended-empty a {
		width: 100%;
	}
}

/* Compact dashboard version of Profile Summary */

.ndt-dash-profile-summary-mini {
	display: grid;
	gap: 20px;
}

.ndt-dash-profile-summary-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.ndt-dash-profile-field {
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-dash-profile-field span {
	display: block;
	margin-bottom: 8px;
	color: #5b6b84;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-dash-profile-field strong {
	display: block;
	color: var(--ndt-home-navy);
	font-size: 17px;
	font-weight: 900;
	line-height: 1.3;
}

.ndt-dash-profile-field a {
	color: var(--ndt-home-pink);
	text-decoration: none;
}

.ndt-dash-profile-field a:hover,
.ndt-dash-profile-field a:focus {
	color: var(--ndt-home-navy);
	text-decoration: none;
}

.ndt-dash-profile-summary-actions {
	display: flex;
	justify-content: flex-end;
}

.ndt-dash-profile-summary-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 12px 18px;
	border-radius: 999px;
	background: var(--ndt-home-navy);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ndt-dash-profile-summary-actions a:hover,
.ndt-dash-profile-summary-actions a:focus {
	background: var(--ndt-home-pink);
	color: #ffffff;
	text-decoration: none;
}

@media (max-width: 720px) {
	.ndt-dash-profile-summary-grid {
		grid-template-columns: 1fr;
	}

	.ndt-dash-profile-summary-actions {
		justify-content: stretch;
	}

	.ndt-dash-profile-summary-actions a {
		width: 100%;
	}
}

/* Compact dashboard version of Resume Manager */

.ndt-dash-resume-mini {
	display: grid;
	gap: 16px;
}

.ndt-dash-current-resume {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 16px;
	align-items: center;
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-dash-current-resume-main span {
	display: block;
	margin-bottom: 8px;
	color: #5b6b84;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-dash-current-resume-main strong {
	display: block;
	color: var(--ndt-home-navy);
	font-size: 16px;
	font-weight: 900;
	line-height: 1.3;
	word-break: break-word;
}

.ndt-dash-current-resume-empty {
	display: block;
}

.ndt-dash-current-resume-empty p {
	margin-bottom: 0;
	color: var(--ndt-home-muted);
	font-size: 15px;
}

.ndt-dash-current-resume-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.ndt-dash-current-resume-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 10px 16px;
	border-radius: 999px;
	background: var(--ndt-home-navy);
	color: #ffffff;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ndt-dash-current-resume-actions a:hover,
.ndt-dash-current-resume-actions a:focus {
	background: var(--ndt-home-pink);
	color: #ffffff;
	text-decoration: none;
}

.ndt-dash-resume-upload-form,
.ndt-dash-resume-remove-form {
	display: grid;
	gap: 10px;
	margin: 0;
}

.ndt-dash-resume-upload-form {
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #ffffff;
}

.ndt-dash-resume-upload-form label {
	color: var(--ndt-home-navy);
	font-size: 14px;
	font-weight: 900;
	line-height: 1.2;
}

.ndt-dash-resume-upload-form input[type="file"] {
	width: 100%;
	padding: 12px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 14px;
	background: #f7f9fc;
	color: var(--ndt-home-muted);
	font-size: 14px;
}

.ndt-dash-resume-upload-form button,
.ndt-dash-resume-remove-form button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	width: fit-content;
	padding: 11px 18px;
	border: 0;
	border-radius: 999px;
	cursor: pointer;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
}

.ndt-dash-resume-upload-form button {
	background: var(--ndt-home-pink);
	color: #ffffff;
}

.ndt-dash-resume-upload-form button:hover,
.ndt-dash-resume-upload-form button:focus {
	background: #e60061;
	color: #ffffff;
}

.ndt-dash-resume-remove-form {
	justify-items: end;
}

.ndt-dash-resume-remove-form button {
	background: rgba(11, 31, 61, 0.08);
	color: var(--ndt-home-navy);
}

.ndt-dash-resume-remove-form button:hover,
.ndt-dash-resume-remove-form button:focus {
	background: rgba(255, 0, 109, 0.12);
	color: var(--ndt-home-pink);
}

.ndt-dash-resume-mini .ndt-resume-message {
	margin: 0;
	padding: 12px 14px;
	border-radius: 14px;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.4;
}

.ndt-dash-resume-mini .ndt-resume-message-success {
	background: rgba(19, 168, 99, 0.1);
	color: #067647;
}

.ndt-dash-resume-mini .ndt-resume-message-error {
	background: rgba(217, 45, 32, 0.1);
	color: #B42318;
}

@media (max-width: 720px) {
	.ndt-dash-current-resume {
		grid-template-columns: 1fr;
	}

	.ndt-dash-current-resume-actions {
		justify-content: stretch;
	}

	.ndt-dash-current-resume-actions a,
	.ndt-dash-resume-upload-form button,
	.ndt-dash-resume-remove-form button {
		width: 100%;
	}

	.ndt-dash-resume-remove-form {
		justify-items: stretch;
	}
}

/* Compact dashboard version of Profile Completion */

.ndt-dash-profile-completion-mini {
	display: grid;
	gap: 16px;
}

.ndt-dash-profile-completion-top {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 16px;
	align-items: center;
}

.ndt-dash-profile-completion-top > div {
	display: grid;
	place-items: center;
	width: 94px;
	height: 94px;
	border-radius: 22px;
	background: var(--ndt-home-pink-soft);
	text-align: center;
}

.ndt-dash-profile-completion-top strong {
	display: block;
	color: var(--ndt-home-pink);
	font-size: 30px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: -0.04em;
}

.ndt-dash-profile-completion-top span {
	margin-top: 6px;
	color: var(--ndt-home-pink);
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-dash-profile-completion-top p {
	margin-bottom: 0;
	color: var(--ndt-home-muted);
	font-size: 15px;
	line-height: 1.5;
}

.ndt-dash-profile-completion-bar {
	overflow: hidden;
	height: 12px;
	border-radius: 999px;
	background: rgba(11, 31, 61, 0.08);
}

.ndt-dash-profile-completion-bar div {
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--ndt-home-pink), #ff5ca2);
}

.ndt-dash-profile-completion-missing {
	padding: 16px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-dash-profile-completion-missing > span {
	display: block;
	margin-bottom: 10px;
	color: #5b6b84;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-dash-profile-completion-missing ul {
	display: grid;
	gap: 8px;
	margin: 0;
	padding-left: 18px;
}

.ndt-dash-profile-completion-missing li {
	color: var(--ndt-home-navy);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
}

.ndt-dash-profile-completion-actions {
	display: flex;
	justify-content: flex-end;
}

.ndt-dash-profile-completion-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 11px 18px;
	border-radius: 999px;
	background: var(--ndt-home-navy);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ndt-dash-profile-completion-actions a:hover,
.ndt-dash-profile-completion-actions a:focus {
	background: var(--ndt-home-pink);
	color: #ffffff;
	text-decoration: none;
}

@media (max-width: 720px) {
	.ndt-dash-profile-completion-top {
		grid-template-columns: 1fr;
	}

	.ndt-dash-profile-completion-top > div {
		width: 100%;
		height: auto;
		min-height: 92px;
	}

	.ndt-dash-profile-completion-actions {
		justify-content: stretch;
	}

	.ndt-dash-profile-completion-actions a {
		width: 100%;
	}
}

/* Compact dashboard version of Certification Alerts */

.ndt-dash-cert-alerts-mini {
	display: grid;
	gap: 16px;
}

.ndt-dash-cert-alerts-empty,
.ndt-dash-cert-alerts-good,
.ndt-dash-cert-alerts-status {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 16px;
	align-items: center;
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-dash-cert-alerts-empty {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.ndt-dash-cert-alerts-good > div,
.ndt-dash-cert-alerts-status > div {
	display: grid;
	place-items: center;
	width: 84px;
	height: 84px;
	border-radius: 20px;
	background: rgba(255, 0, 109, 0.12);
	text-align: center;
}

.ndt-dash-cert-alerts-good strong,
.ndt-dash-cert-alerts-status strong {
	display: block;
	color: var(--ndt-home-pink);
	font-size: 24px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: -0.04em;
}

.ndt-dash-cert-alerts-good span,
.ndt-dash-cert-alerts-status span {
	margin-top: 6px;
	color: var(--ndt-home-pink);
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-dash-cert-alerts-empty p,
.ndt-dash-cert-alerts-good p,
.ndt-dash-cert-alerts-status p {
	margin-bottom: 0;
	color: var(--ndt-home-muted);
	font-size: 15px;
	line-height: 1.5;
}

.ndt-dash-cert-alerts-list {
	display: grid;
	gap: 10px;
}

.ndt-dash-cert-alert-item {
	padding: 14px 16px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 16px;
	background: #ffffff;
}

.ndt-dash-cert-alert-item strong {
	display: block;
	margin-bottom: 5px;
	color: var(--ndt-home-navy);
	font-size: 15px;
	font-weight: 900;
	line-height: 1.25;
}

.ndt-dash-cert-alert-item span {
	display: block;
	color: var(--ndt-home-muted);
	font-size: 13px;
	font-weight: 800;
	line-height: 1.35;
}

.ndt-dash-cert-alert-expired {
	border-color: rgba(180, 35, 24, 0.18);
	background: rgba(217, 45, 32, 0.06);
}

.ndt-dash-cert-alert-soon {
	border-color: rgba(255, 0, 109, 0.18);
	background: rgba(255, 0, 109, 0.06);
}

.ndt-dash-cert-alerts-actions {
	display: flex;
	justify-content: flex-end;
}

.ndt-dash-cert-alerts-actions a,
.ndt-dash-cert-alerts-empty a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 11px 18px;
	border-radius: 999px;
	background: var(--ndt-home-navy);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ndt-dash-cert-alerts-actions a:hover,
.ndt-dash-cert-alerts-actions a:focus,
.ndt-dash-cert-alerts-empty a:hover,
.ndt-dash-cert-alerts-empty a:focus {
	background: var(--ndt-home-pink);
	color: #ffffff;
	text-decoration: none;
}

@media (max-width: 720px) {
	.ndt-dash-cert-alerts-empty,
	.ndt-dash-cert-alerts-good,
	.ndt-dash-cert-alerts-status {
		grid-template-columns: 1fr;
	}

	.ndt-dash-cert-alerts-empty {
		align-items: stretch;
		flex-direction: column;
	}

	.ndt-dash-cert-alerts-good > div,
	.ndt-dash-cert-alerts-status > div {
		width: 100%;
		height: auto;
		min-height: 84px;
	}

	.ndt-dash-cert-alerts-actions {
		justify-content: stretch;
	}

	.ndt-dash-cert-alerts-actions a,
	.ndt-dash-cert-alerts-empty a {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs Certifications Page
   ========================================================= */

.ndt-certifications {
	--ndt-home-navy: #0B1F3D;
	--ndt-home-navy-2: #102C54;
	--ndt-home-dark: #07172E;
	--ndt-home-pink: #FF006D;
	--ndt-home-pink-soft: rgba(255, 0, 109, 0.12);
	--ndt-home-ink: #101828;
	--ndt-home-muted: #667085;
	--ndt-home-border: rgba(11, 31, 61, 0.12);
	--ndt-home-shadow: 0 24px 70px rgba(11, 31, 61, 0.14);

	background: #f7f9fc;
	color: var(--ndt-home-ink);
	overflow-x: hidden;
}

.ndt-certifications *,
.ndt-certifications *::before,
.ndt-certifications *::after {
	box-sizing: border-box;
}

.ndt-certifications h1,
.ndt-certifications h2,
.ndt-certifications h3,
.ndt-certifications p {
	margin-top: 0;
}

.ndt-certifications h1,
.ndt-certifications h2,
.ndt-certifications h3 {
	color: var(--ndt-home-navy);
	line-height: 1.06;
	letter-spacing: -0.035em;
}

.ndt-certifications h1 {
	max-width: 820px;
	margin-bottom: 18px;
	font-size: clamp(40px, 5.6vw, 72px);
}

.ndt-certifications h2 {
	margin-bottom: 8px;
	font-size: clamp(28px, 3vw, 38px);
}

.ndt-certifications p {
	color: var(--ndt-home-muted);
	font-size: 17px;
	line-height: 1.65;
}

/* Hero */

.ndt-certs-hero {
	padding: clamp(58px, 7vw, 96px) 0 46px;
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.14), transparent 34%),
		linear-gradient(135deg, #ffffff 0%, #f7f9fc 58%, #eef3f9 100%);
}

.ndt-certs-hero-inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 30px;
	align-items: end;
}

.ndt-certs-hero-copy p:last-child {
	max-width: 760px;
	margin-bottom: 0;
	font-size: clamp(17px, 2vw, 20px);
}

.ndt-certs-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: flex-end;
}

/* Main Layout */

.ndt-certs-main {
	padding: 34px 0 clamp(74px, 8vw, 110px);
}

.ndt-certs-layout {
	display: grid;
	gap: 22px;
}

.ndt-certs-card {
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 26px;
	background: #ffffff;
	box-shadow: 0 16px 44px rgba(11, 31, 61, 0.08);
	overflow: hidden;
}

.ndt-certs-card-header {
	padding: 26px 28px 20px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
	background: #ffffff;
}

.ndt-certs-card-header p {
	max-width: 760px;
	margin-bottom: 0;
	font-size: 16px;
	line-height: 1.55;
}

.ndt-certs-shortcode {
	padding: 24px;
}

.ndt-certs-shortcode > *:first-child {
	margin-top: 0;
}

.ndt-certs-shortcode > *:last-child {
	margin-bottom: 0;
}

/* =========================================================
   Certification Form Cleanup
   Frontend Admin / ACF form styling
   ========================================================= */

.ndt-certs-form-card .fea-form,
.ndt-certs-form-card form {
	max-width: none;
	margin: 0;
}

.ndt-certs-form-card .acf-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 26px 22px;
	border: 0;
	background: transparent;
}

.ndt-certs-form-card .acf-form,
.ndt-certs-form-card .frontend-admin-form,
.ndt-certs-form-card .fea-form,
.ndt-certs-form-card .acf-form-fields {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}

.ndt-certs-form-card .acf-field {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.ndt-certs-form-card .acf-field[data-width] {
	width: 100% !important;
}

.ndt-certs-form-card .acf-field.acf-field-textarea,
.ndt-certs-form-card .acf-field.acf-field-file,
.ndt-certs-form-card .acf-field.acf-field-image,
.ndt-certs-form-card .acf-field.acf-field-message,
.ndt-certs-form-card .acf-field.acf-field-true-false,
.ndt-certs-form-card .acf-field.acf-field-checkbox,
.ndt-certs-form-card .acf-field.acf-field-repeater {
	grid-column: 1 / -1;
}

.ndt-certs-form-card .acf-label {
	margin: 0 0 10px;
}

.ndt-certs-form-card .acf-label label {
	color: var(--ndt-home-navy);
	font-size: 15px;
	font-weight: 900;
	line-height: 1.25;
}

.ndt-certs-form-card .acf-label p.description,
.ndt-certs-form-card .description {
	margin: 6px 0 0;
	color: var(--ndt-home-muted);
	font-size: 13px;
	line-height: 1.45;
}

.ndt-certs-form-card .acf-input {
	margin: 0;
}

.ndt-certs-form-card input[type="text"],
.ndt-certs-form-card input[type="email"],
.ndt-certs-form-card input[type="tel"],
.ndt-certs-form-card input[type="url"],
.ndt-certs-form-card input[type="date"],
.ndt-certs-form-card input[type="number"],
.ndt-certs-form-card input[type="password"],
.ndt-certs-form-card input[type="file"],
.ndt-certs-form-card select,
.ndt-certs-form-card textarea {
	width: 100%;
	max-width: 100%;
	min-height: 52px;
	padding: 13px 16px;
	border: 1px solid rgba(11, 31, 61, 0.16);
	border-radius: 16px;
	background: #ffffff;
	color: var(--ndt-home-navy);
	font-size: 15px;
	line-height: 1.4;
	box-shadow: none;
}

.ndt-certs-form-card .acf-field {
	min-width: 0;
}

.ndt-certs-form-card .acf-field .acf-input-wrap {
	overflow: visible;
}

.ndt-certs-form-card textarea {
	min-height: 130px;
	resize: vertical;
}

.ndt-certs-form-card input[type="file"] {
	padding: 11px;
	background: #ffffff;
}

.ndt-certs-form-card input:focus,
.ndt-certs-form-card select:focus,
.ndt-certs-form-card textarea:focus {
	outline: none;
	border-color: rgba(255, 0, 109, 0.55);
	background: #ffffff;
	box-shadow: 0 0 0 4px rgba(255, 0, 109, 0.10);
}

.ndt-certs-form-card .acf-required {
	color: var(--ndt-home-pink);
}

.ndt-certs-form-card .acf-error-message {
	margin: 8px 0 0;
	padding: 10px 12px;
	border-radius: 12px;
	background: rgba(217, 45, 32, 0.10);
	color: #B42318;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.4;
}

.ndt-certs-form-card .acf-notice,
.ndt-certs-form-card .acf-notice.-error {
	margin: 0 0 18px;
	padding: 14px 16px;
	border: 0;
	border-radius: 14px;
	background: rgba(217, 45, 32, 0.10);
	color: #B42318;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.4;
}

.ndt-certs-form-card .acf-notice.-success {
	background: rgba(19, 168, 99, 0.10);
	color: #067647;
}

/* Submit area */

.ndt-certs-form-card .fea-submit-buttons,
.ndt-certs-form-card .acf-form-submit {
	display: flex;
	justify-content: flex-end;
	gap: 12px;
	margin-top: 24px;
	padding-top: 22px;
	border-top: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-certs-form-card input[type="submit"],
.ndt-certs-form-card button[type="submit"],
.ndt-certs-form-card .acf-button,
.ndt-certs-form-card .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 22px;
	border: 0;
	border-radius: 999px;
	background: var(--ndt-home-pink);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 12px 28px rgba(255, 0, 109, 0.20);
}

.ndt-certs-form-card input[type="submit"]:hover,
.ndt-certs-form-card input[type="submit"]:focus,
.ndt-certs-form-card button[type="submit"]:hover,
.ndt-certs-form-card button[type="submit"]:focus,
.ndt-certs-form-card .acf-button:hover,
.ndt-certs-form-card .acf-button:focus,
.ndt-certs-form-card .button:hover,
.ndt-certs-form-card .button:focus {
	background: #e60061;
	color: #ffffff;
	text-decoration: none;
}

/* ACF file upload UI */

.ndt-certs-form-card .acf-file-uploader {
	padding: 16px;
	border: 1px dashed rgba(11, 31, 61, 0.22);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-certs-form-card .acf-file-uploader .file-wrap {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px;
	border-radius: 14px;
	background: #ffffff;
}

.ndt-certs-form-card .acf-file-uploader .file-info {
	color: var(--ndt-home-navy);
	font-size: 14px;
	font-weight: 800;
}

.ndt-certs-form-card .acf-file-uploader .hide-if-value,
.ndt-certs-form-card .acf-file-uploader .show-if-value {
	margin: 0;
}

/* Checkboxes / radio buttons */

.ndt-certs-form-card ul.acf-checkbox-list,
.ndt-certs-form-card ul.acf-radio-list {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ndt-certs-form-card ul.acf-checkbox-list li,
.ndt-certs-form-card ul.acf-radio-list li {
	margin: 0;
}

.ndt-certs-form-card ul.acf-checkbox-list label,
.ndt-certs-form-card ul.acf-radio-list label {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 14px;
	background: #f7f9fc;
	color: var(--ndt-home-navy);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.3;
}

/* Mobile */

@media (max-width: 720px) {
	.ndt-certs-form-card .acf-fields {
		grid-template-columns: 1fr;
	}

	.ndt-certs-form-card .fea-submit-buttons,
	.ndt-certs-form-card .acf-form-submit {
		justify-content: stretch;
	}

	.ndt-certs-form-card input[type="submit"],
	.ndt-certs-form-card button[type="submit"],
	.ndt-certs-form-card .acf-button,
	.ndt-certs-form-card .button {
		width: 100%;
	}
}

/* Current list cleanup, light-touch only */

.ndt-certs-list-card .candidate-certifications-list,
.ndt-certs-list-card .candidate-certifications,
.ndt-certs-list-card .my-certifications {
	max-width: none;
}

.ndt-certs-list-card ul {
	margin-top: 0;
}

.ndt-certs-list-card a {
	font-weight: 900;
}

/* Responsive */

@media (max-width: 900px) {
	.ndt-certs-hero-inner {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.ndt-certs-hero-actions {
		justify-content: flex-start;
	}
}

@media (max-width: 720px) {
	.ndt-certifications h1 {
		font-size: clamp(36px, 11vw, 52px);
	}

	.ndt-certifications h2 {
		font-size: clamp(26px, 8vw, 34px);
	}

	.ndt-certs-hero-actions,
	.ndt-certs-hero-actions .ndt-home-btn {
		width: 100%;
	}

	.ndt-certs-card {
		border-radius: 20px;
	}

	.ndt-certs-card-header,
	.ndt-certs-shortcode {
		padding: 20px;
	}
}

/* =========================================================
   Clean Certifications List
   ========================================================= */

.ndt-cert-clean-list {
	display: grid;
	gap: 16px;
}

.ndt-cert-clean-empty {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 22px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-cert-clean-empty p {
	margin-bottom: 0;
	color: var(--ndt-home-muted);
	font-size: 15px;
}

.ndt-cert-clean-empty a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 11px 18px;
	border-radius: 999px;
	background: var(--ndt-home-navy);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ndt-cert-clean-empty a:hover,
.ndt-cert-clean-empty a:focus {
	background: var(--ndt-home-pink);
	color: #ffffff;
	text-decoration: none;
}

.ndt-cert-clean-card {
	padding: 22px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 22px;
	background: #ffffff;
	box-shadow: 0 12px 34px rgba(11, 31, 61, 0.06);
}

.ndt-cert-clean-card-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 18px;
}

.ndt-cert-clean-title-wrap h3 {
	margin: 0 0 6px;
	color: var(--ndt-home-navy);
	font-size: 24px;
	font-weight: 900;
	line-height: 1.15;
	letter-spacing: -0.03em;
}

.ndt-cert-clean-title-wrap p {
	margin-bottom: 0;
	color: var(--ndt-home-muted);
	font-size: 15px;
	line-height: 1.4;
}

.ndt-cert-clean-status {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 30px;
	padding: 8px 12px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	white-space: nowrap;
}

.ndt-cert-status-active {
	background: rgba(19, 168, 99, 0.1);
	color: #067647;
}

.ndt-cert-status-expired {
	background: rgba(217, 45, 32, 0.1);
	color: #B42318;
}

.ndt-cert-status-neutral {
	background: rgba(11, 31, 61, 0.08);
	color: var(--ndt-home-navy);
}

.ndt-cert-clean-meta-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 18px;
}

.ndt-cert-clean-meta-item {
	padding: 14px;
	border: 1px solid rgba(11, 31, 61, 0.09);
	border-radius: 16px;
	background: #f7f9fc;
}

.ndt-cert-clean-meta-item span {
	display: block;
	margin-bottom: 7px;
	color: #5b6b84;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-cert-clean-meta-item strong {
	display: block;
	color: var(--ndt-home-navy);
	font-size: 14px;
	font-weight: 900;
	line-height: 1.3;
	word-break: break-word;
}

.ndt-cert-clean-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	justify-content: flex-end;
	padding-top: 18px;
	border-top: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-cert-clean-actions a,
.ndt-cert-clean-inline-actions a,
.ndt-cert-clean-inline-edit button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 10px 16px;
	border-radius: 999px;
	background: var(--ndt-home-navy);
	color: #ffffff;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	border: 0;
	cursor: pointer;
}

.ndt-cert-clean-actions a:hover,
.ndt-cert-clean-actions a:focus,
.ndt-cert-clean-inline-actions a:hover,
.ndt-cert-clean-inline-actions a:focus,
.ndt-cert-clean-inline-edit button:hover,
.ndt-cert-clean-inline-edit button:focus {
	background: var(--ndt-home-pink);
	color: #ffffff;
	text-decoration: none;
}

.ndt-cert-clean-actions .ndt-cert-clean-delete {
	background: rgba(217, 45, 32, 0.09);
	color: #B42318;
}

.ndt-cert-clean-actions .ndt-cert-clean-delete:hover,
.ndt-cert-clean-actions .ndt-cert-clean-delete:focus {
	background: #B42318;
	color: #ffffff;
}

.ndt-cert-clean-inline-edit {
	margin-top: 22px;
	padding: 22px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-cert-clean-inline-edit h3 {
	margin-bottom: 18px;
	color: var(--ndt-home-navy);
	font-size: 24px;
	font-weight: 900;
}

.ndt-cert-clean-inline-edit .ndt-cert-inline-form {
	display: grid;
	gap: 14px;
	margin: 0 0 18px;
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.09);
	border-radius: 16px;
	background: #ffffff;
}

.ndt-cert-clean-inline-edit .ndt-cert-inline-form:last-child {
	margin-bottom: 0;
}

.ndt-cert-clean-inline-edit p {
	margin-bottom: 0;
}

.ndt-cert-clean-inline-edit label {
	color: var(--ndt-home-navy);
	font-size: 14px;
	font-weight: 900;
	line-height: 1.4;
}

.ndt-cert-clean-inline-edit input,
.ndt-cert-clean-inline-edit select {
	width: 100%;
	margin-top: 7px;
	padding: 12px 14px;
	border: 1px solid rgba(11, 31, 61, 0.14);
	border-radius: 14px;
	background: #ffffff;
	color: var(--ndt-home-navy);
	font-size: 15px;
}

.ndt-cert-clean-inline-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

.ndt-cert-notice {
	margin: 0 0 16px;
	padding: 14px 16px;
	border-radius: 14px;
	font-size: 14px;
	line-height: 1.4;
}

.ndt-cert-notice-success {
	background: rgba(19, 168, 99, 0.1);
	color: #067647;
}

.ndt-cert-notice-error {
	background: rgba(217, 45, 32, 0.1);
	color: #B42318;
}

@media (max-width: 1100px) {
	.ndt-cert-clean-meta-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 720px) {
	.ndt-cert-clean-card {
		padding: 18px;
		border-radius: 18px;
	}

	.ndt-cert-clean-card-top {
		display: grid;
	}

	.ndt-cert-clean-meta-grid {
		grid-template-columns: 1fr;
	}

	.ndt-cert-clean-actions {
		justify-content: stretch;
	}

	.ndt-cert-clean-actions a,
	.ndt-cert-clean-inline-actions a,
	.ndt-cert-clean-inline-edit button,
	.ndt-cert-clean-empty a {
		width: 100%;
	}

	.ndt-cert-clean-empty {
		align-items: stretch;
		flex-direction: column;
	}

	.ndt-cert-clean-inline-edit {
		padding: 18px;
	}
}

/* =========================================================
   NDT Jobs Candidate Profile Edit Page
   ========================================================= */

.ndt-candidate-profile-edit {
	--ndt-home-navy: #0B1F3D;
	--ndt-home-navy-2: #102C54;
	--ndt-home-dark: #07172E;
	--ndt-home-pink: #FF006D;
	--ndt-home-pink-soft: rgba(255, 0, 109, 0.12);
	--ndt-home-ink: #101828;
	--ndt-home-muted: #667085;
	--ndt-home-border: rgba(11, 31, 61, 0.12);
	--ndt-home-shadow: 0 24px 70px rgba(11, 31, 61, 0.14);

	background: #f7f9fc;
	color: var(--ndt-home-ink);
	overflow-x: hidden;
}

.ndt-candidate-profile-edit *,
.ndt-candidate-profile-edit *::before,
.ndt-candidate-profile-edit *::after {
	box-sizing: border-box;
}

.ndt-candidate-profile-edit h1,
.ndt-candidate-profile-edit h2,
.ndt-candidate-profile-edit h3,
.ndt-candidate-profile-edit p {
	margin-top: 0;
}

.ndt-candidate-profile-edit h1,
.ndt-candidate-profile-edit h2,
.ndt-candidate-profile-edit h3 {
	color: var(--ndt-home-navy);
	line-height: 1.06;
	letter-spacing: -0.035em;
}

.ndt-candidate-profile-edit h1 {
	max-width: 860px;
	margin-bottom: 18px;
	font-size: clamp(40px, 5.6vw, 72px);
}

.ndt-candidate-profile-edit h2 {
	margin-bottom: 8px;
	font-size: clamp(28px, 3vw, 38px);
}

.ndt-candidate-profile-edit p {
	color: var(--ndt-home-muted);
	font-size: 17px;
	line-height: 1.65;
}

/* Hero */

.ndt-profile-edit-hero {
	padding: clamp(58px, 7vw, 96px) 0 46px;
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.14), transparent 34%),
		linear-gradient(135deg, #ffffff 0%, #f7f9fc 58%, #eef3f9 100%);
}

.ndt-profile-edit-hero-inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 30px;
	align-items: end;
}

.ndt-profile-edit-hero-copy p:last-child {
	max-width: 780px;
	margin-bottom: 0;
	font-size: clamp(17px, 2vw, 20px);
}

.ndt-profile-edit-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: flex-end;
}

/* Main Layout */

.ndt-profile-edit-main {
	padding: 34px 0 clamp(74px, 8vw, 110px);
}

.ndt-profile-edit-layout {
	display: grid;
	gap: 22px;
}

.ndt-profile-edit-card {
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 26px;
	background: #ffffff;
	box-shadow: 0 16px 44px rgba(11, 31, 61, 0.08);
	overflow: hidden;
}

.ndt-profile-edit-card-header {
	padding: 26px 28px 20px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
	background: #ffffff;
}

.ndt-profile-edit-card-header p {
	max-width: 800px;
	margin-bottom: 0;
	font-size: 16px;
	line-height: 1.55;
}

.ndt-profile-edit-shortcode {
	padding: 24px;
}

.ndt-profile-edit-shortcode > *:first-child {
	margin-top: 0;
}

.ndt-profile-edit-shortcode > *:last-child {
	margin-bottom: 0;
}

/* =========================================================
   Candidate Profile Form Cleanup
   Frontend Admin / ACF form styling
   ========================================================= */

.ndt-profile-edit-card .acf-form,
.ndt-profile-edit-card .frontend-admin-form,
.ndt-profile-edit-card .fea-form,
.ndt-profile-edit-card .acf-form-fields,
.ndt-profile-edit-card form {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}

.ndt-profile-edit-card .acf-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 26px 22px;
	border: 0;
	background: transparent;
}

.ndt-profile-edit-card .acf-field {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.ndt-profile-edit-card .acf-field[data-width] {
	width: 100% !important;
}

.ndt-profile-edit-card .acf-field .acf-input-wrap {
	overflow: visible;
}

/* Big / full-width fields */

.ndt-profile-edit-card .acf-field.acf-field-textarea,
.ndt-profile-edit-card .acf-field.acf-field-file,
.ndt-profile-edit-card .acf-field.acf-field-image,
.ndt-profile-edit-card .acf-field.acf-field-message,
.ndt-profile-edit-card .acf-field.acf-field-true-false,
.ndt-profile-edit-card .acf-field.acf-field-checkbox,
.ndt-profile-edit-card .acf-field.acf-field-repeater {
	grid-column: 1 / -1;
}

.ndt-profile-edit-card .acf-label {
	margin: 0 0 10px;
}

.ndt-profile-edit-card .acf-label label {
	color: var(--ndt-home-navy);
	font-size: 15px;
	font-weight: 900;
	line-height: 1.25;
}

.ndt-profile-edit-card .acf-label p.description,
.ndt-profile-edit-card .description {
	margin: 6px 0 0;
	color: var(--ndt-home-muted);
	font-size: 13px;
	line-height: 1.45;
}

.ndt-profile-edit-card .acf-input {
	margin: 0;
}

.ndt-profile-edit-card input[type="text"],
.ndt-profile-edit-card input[type="email"],
.ndt-profile-edit-card input[type="tel"],
.ndt-profile-edit-card input[type="url"],
.ndt-profile-edit-card input[type="date"],
.ndt-profile-edit-card input[type="number"],
.ndt-profile-edit-card input[type="password"],
.ndt-profile-edit-card input[type="file"],
.ndt-profile-edit-card select,
.ndt-profile-edit-card textarea {
	width: 100%;
	max-width: 100%;
	min-height: 52px;
	padding: 13px 16px;
	border: 1px solid rgba(11, 31, 61, 0.16);
	border-radius: 16px;
	background: #ffffff;
	color: var(--ndt-home-navy);
	font-size: 15px;
	line-height: 1.4;
	box-shadow: none;
}

.ndt-profile-edit-card textarea {
	min-height: 130px;
	resize: vertical;
}

.ndt-profile-edit-card input[type="file"] {
	padding: 11px;
	background: #ffffff;
}

.ndt-profile-edit-card input:focus,
.ndt-profile-edit-card select:focus,
.ndt-profile-edit-card textarea:focus {
	outline: none;
	border-color: rgba(255, 0, 109, 0.55);
	background: #ffffff;
	box-shadow: 0 0 0 4px rgba(255, 0, 109, 0.10);
}

.ndt-profile-edit-card .acf-required {
	color: var(--ndt-home-pink);
}

/* Submit area */

.ndt-profile-edit-card .fea-submit-buttons,
.ndt-profile-edit-card .acf-form-submit {
	display: flex;
	justify-content: flex-end;
	gap: 12px;
	margin-top: 24px;
	padding-top: 22px;
	border-top: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-profile-edit-card input[type="submit"],
.ndt-profile-edit-card button[type="submit"],
.ndt-profile-edit-card .acf-button,
.ndt-profile-edit-card .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 22px;
	border: 0;
	border-radius: 999px;
	background: var(--ndt-home-pink);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 12px 28px rgba(255, 0, 109, 0.20);
}

.ndt-profile-edit-card input[type="submit"]:hover,
.ndt-profile-edit-card input[type="submit"]:focus,
.ndt-profile-edit-card button[type="submit"]:hover,
.ndt-profile-edit-card button[type="submit"]:focus,
.ndt-profile-edit-card .acf-button:hover,
.ndt-profile-edit-card .acf-button:focus,
.ndt-profile-edit-card .button:hover,
.ndt-profile-edit-card .button:focus {
	background: #e60061;
	color: #ffffff;
	text-decoration: none;
}

/* ACF file upload UI */

.ndt-profile-edit-card .acf-file-uploader {
	padding: 16px;
	border: 1px dashed rgba(11, 31, 61, 0.22);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-profile-edit-card .acf-file-uploader .file-wrap {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px;
	border-radius: 14px;
	background: #ffffff;
}

.ndt-profile-edit-card .acf-file-uploader .file-info {
	color: var(--ndt-home-navy);
	font-size: 14px;
	font-weight: 800;
}

/* Checkbox / radio lists */

.ndt-profile-edit-card ul.acf-checkbox-list,
.ndt-profile-edit-card ul.acf-radio-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ndt-profile-edit-card ul.acf-checkbox-list li,
.ndt-profile-edit-card ul.acf-radio-list li {
	margin: 0;
}

.ndt-profile-edit-card ul.acf-checkbox-list label,
.ndt-profile-edit-card ul.acf-radio-list label {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 46px;
	padding: 12px 14px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 14px;
	background: #f7f9fc;
	color: var(--ndt-home-navy);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.3;
}

.ndt-profile-edit-card ul.acf-checkbox-list input,
.ndt-profile-edit-card ul.acf-radio-list input {
	flex: 0 0 auto;
	width: auto;
	min-height: 0;
}

/* Error / notice messages */

.ndt-profile-edit-card .acf-error-message {
	margin: 8px 0 0;
	padding: 10px 12px;
	border-radius: 12px;
	background: rgba(217, 45, 32, 0.10);
	color: #B42318;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.4;
}

.ndt-profile-edit-card .acf-notice,
.ndt-profile-edit-card .acf-notice.-error {
	margin: 0 0 18px;
	padding: 14px 16px;
	border: 0;
	border-radius: 14px;
	background: rgba(217, 45, 32, 0.10);
	color: #B42318;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.4;
}

.ndt-profile-edit-card .acf-notice.-success {
	background: rgba(19, 168, 99, 0.10);
	color: #067647;
}

/* Responsive */

@media (max-width: 1000px) {
	.ndt-profile-edit-card ul.acf-checkbox-list,
	.ndt-profile-edit-card ul.acf-radio-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.ndt-profile-edit-hero-inner {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.ndt-profile-edit-hero-actions {
		justify-content: flex-start;
	}
}

@media (max-width: 720px) {
	.ndt-candidate-profile-edit h1 {
		font-size: clamp(36px, 11vw, 52px);
	}

	.ndt-candidate-profile-edit h2 {
		font-size: clamp(26px, 8vw, 34px);
	}

	.ndt-profile-edit-hero-actions,
	.ndt-profile-edit-hero-actions .ndt-home-btn {
		width: 100%;
	}

	.ndt-profile-edit-card {
		border-radius: 20px;
	}

	.ndt-profile-edit-card-header,
	.ndt-profile-edit-shortcode {
		padding: 20px;
	}

	.ndt-profile-edit-card .acf-fields {
		grid-template-columns: 1fr;
	}

	.ndt-profile-edit-card ul.acf-checkbox-list,
	.ndt-profile-edit-card ul.acf-radio-list {
		grid-template-columns: 1fr;
	}

	.ndt-profile-edit-card .fea-submit-buttons,
	.ndt-profile-edit-card .acf-form-submit {
		justify-content: stretch;
	}

	.ndt-profile-edit-card input[type="submit"],
	.ndt-profile-edit-card button[type="submit"],
	.ndt-profile-edit-card .acf-button,
	.ndt-profile-edit-card .button {
		width: 100%;
	}
}

/* =========================================================
   WPJM Filter Box
   ========================================================= */

.ndt-jobs-feed .job_filters {
	overflow: hidden;
	margin: 0 0 28px;
	padding: 0;
	border: 1px solid var(--ndt-jobs-border);
	border-radius: 26px;
	background: #ffffff;
	box-shadow: 0 18px 50px rgba(11, 31, 61, 0.08);
}

/* Main search area */

.ndt-jobs-feed .job_filters .search_jobs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 22px;
	align-items: start;
	margin: 0;
	padding: 28px;
	background:
		radial-gradient(circle at top right, rgba(255, 0, 109, 0.08), transparent 42%),
		#ffffff;
}

.ndt-jobs-feed .job_filters .search_jobs::before {
	content: "Search available NDT jobs";
	grid-column: 1 / -1;
	display: block;
	margin-bottom: 2px;
	color: var(--ndt-jobs-navy);
	font-size: 24px;
	font-weight: 900;
	line-height: 1.15;
	letter-spacing: -0.03em;
}

/* Kill plugin floats/widths inside the filter area */

.ndt-jobs-feed .job_filters .search_jobs > div {
	float: none;
	clear: none;
	width: auto;
	max-width: none;
	margin: 0;
	padding: 0;
}

.ndt-jobs-feed .job_filters ul,
.ndt-jobs-feed .job_filters li {
	margin-left: 0;
	padding-left: 0;
	list-style: none;
}

.ndt-jobs-feed .job_filters li::marker {
	content: "";
}

/* Main keyword/location fields */

.ndt-jobs-feed .job_filters .search_keywords {
	grid-column: 1;
	grid-row: 2;
}

.ndt-jobs-feed .job_filters .search_location {
	grid-column: 2;
	grid-row: 2;
}

.ndt-jobs-feed .job_filters .search_submit {
	grid-column: 1 / -1;
	grid-row: 3;
}

.ndt-jobs-feed .job_filters .search_submit input {
	width: 100%;
}

/* Any extra select/filter fields generated by WPJM or add-ons */

.ndt-jobs-feed .job_filters .search_jobs > div:not(.search_keywords):not(.search_location):not(.search_submit) {
	grid-column: auto;
}

.ndt-jobs-feed .job_filters .search_jobs > div:not(.search_keywords):not(.search_location):not(.search_submit):nth-of-type(4) {
	grid-column: 1;
	grid-row: 4;
}

.ndt-jobs-feed .job_filters .search_jobs > div:not(.search_keywords):not(.search_location):not(.search_submit):nth-of-type(5) {
	grid-column: 2;
	grid-row: 4;
}

.ndt-jobs-feed .job_filters .search_jobs > div:not(.search_keywords):not(.search_location):not(.search_submit):nth-of-type(6) {
	grid-column: 1 / -1;
	grid-row: 5;
}

/* Labels */

.ndt-jobs-feed .job_filters label {
	display: block;
	margin-bottom: 8px;
	color: var(--ndt-jobs-navy);
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* Inputs and selects */

.ndt-jobs-feed .job_filters input[type="text"],
.ndt-jobs-feed .job_filters input[type="search"],
.ndt-jobs-feed .job_filters select {
	width: 100%;
	max-width: 100%;
	min-height: 52px;
	padding: 13px 16px;
	border: 1px solid rgba(11, 31, 61, 0.16);
	border-radius: 16px;
	background: #ffffff;
	color: var(--ndt-jobs-navy);
	font-size: 15px;
	line-height: 1.4;
	box-shadow: none;
}

.ndt-jobs-feed .job_filters input[type="text"]:focus,
.ndt-jobs-feed .job_filters input[type="search"]:focus,
.ndt-jobs-feed .job_filters select:focus {
	outline: none;
	border-color: rgba(255, 0, 109, 0.55);
	box-shadow: 0 0 0 4px rgba(255, 0, 109, 0.10);
}

/* Search and advanced buttons */

.ndt-jobs-feed .job_filters input[type="submit"],
.ndt-jobs-feed .job_filters button,
.ndt-jobs-feed .job_filters .button,
.ndt-jobs-feed .job_filters .showing_jobs a,
.ndt-jobs-feed .job_filters .advanced-search-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 13px 24px;
	border: 0;
	border-radius: 999px;
	background: var(--ndt-jobs-pink);
	color: #ffffff;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 12px 28px rgba(255, 0, 109, 0.20);
}

.ndt-jobs-feed .job_filters input[type="submit"]:hover,
.ndt-jobs-feed .job_filters input[type="submit"]:focus,
.ndt-jobs-feed .job_filters button:hover,
.ndt-jobs-feed .job_filters button:focus,
.ndt-jobs-feed .job_filters .button:hover,
.ndt-jobs-feed .job_filters .button:focus,
.ndt-jobs-feed .job_filters .showing_jobs a:hover,
.ndt-jobs-feed .job_filters .showing_jobs a:focus,
.ndt-jobs-feed .job_filters .advanced-search-toggle:hover,
.ndt-jobs-feed .job_filters .advanced-search-toggle:focus {
	background: #e60061;
	color: #ffffff;
	text-decoration: none;
}

/* Advanced filters button/area, when generated separately */

.ndt-jobs-feed .job_filters .showing_jobs {
	grid-column: 1 / -1;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
}

/* Job type checkboxes */

.ndt-jobs-feed .job_filters .job_types {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0;
	padding: 18px 24px;
	border-top: 1px solid rgba(11, 31, 61, 0.08);
	background: #f7f9fc;
	list-style: none;
}

.ndt-jobs-feed .job_filters .job_types li {
	margin: 0;
	padding: 0;
	border: 0;
}

.ndt-jobs-feed .job_filters .job_types label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 40px;
	margin: 0;
	padding: 10px 14px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 999px;
	background: #ffffff;
	color: var(--ndt-jobs-navy);
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
}

.ndt-jobs-feed .job_filters .job_types input {
	width: auto;
	margin: 0;
}

/* RSS link */

.ndt-jobs-feed .rss_link {
	display: none;
}

/* =========================================================
   Job Listings
   ========================================================= */

.ndt-jobs-feed ul.job_listings {
	display: grid;
	gap: 16px;
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
	background: transparent;
}

.ndt-jobs-feed ul.job_listings li.job_listing {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.ndt-jobs-feed ul.job_listings li.job_listing a {
	display: grid;
	grid-template-columns: 54px minmax(0, 1fr) minmax(150px, 0.3fr) minmax(150px, 0.26fr);
	gap: 18px;
	align-items: center;
	min-height: 108px;
	padding: 20px 22px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 22px;
	background: #ffffff;
	color: var(--ndt-jobs-ink);
	text-decoration: none;
	box-shadow: 0 10px 30px rgba(11, 31, 61, 0.05);
	transition:
		transform 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease;
}

.ndt-jobs-feed ul.job_listings li.job_listing a:hover,
.ndt-jobs-feed ul.job_listings li.job_listing a:focus {
	transform: translateY(-2px);
	border-color: rgba(255, 0, 109, 0.28);
	box-shadow: 0 18px 48px rgba(11, 31, 61, 0.10);
	text-decoration: none;
}

/* Logo */

.ndt-jobs-feed ul.job_listings li.job_listing img.company_logo {
	position: static;
	float: none;
	width: 54px;
	height: 54px;
	margin: 0;
	border: 1px solid rgba(11, 31, 61, 0.08);
	border-radius: 14px;
	background: #f7f9fc;
	object-fit: contain;
}

/* Position / company */

.ndt-jobs-feed ul.job_listings li.job_listing .position {
	float: none;
	width: auto;
	padding: 0;
}

.ndt-jobs-feed ul.job_listings li.job_listing .position h3 {
	margin: 0 0 7px;
	color: var(--ndt-jobs-navy);
	font-size: 21px;
	font-weight: 900;
	line-height: 1.2;
	letter-spacing: -0.025em;
}

.ndt-jobs-feed ul.job_listings li.job_listing .company {
	display: block;
	color: var(--ndt-jobs-muted);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.35;
}

.ndt-jobs-feed ul.job_listings li.job_listing .company strong {
	color: var(--ndt-jobs-muted);
	font-weight: 800;
}

/* Location */

.ndt-jobs-feed ul.job_listings li.job_listing .location {
	float: none;
	width: auto;
	padding: 0;
	color: var(--ndt-jobs-muted);
	font-size: 16px;
	font-weight: 800;
	line-height: 1.35;
	text-align: left;
}

/* Meta */

.ndt-jobs-feed ul.job_listings li.job_listing .meta {
	display: grid;
	justify-items: end;
	gap: 8px;
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
	list-style: none;
	text-align: right;
}

.ndt-jobs-feed ul.job_listings li.job_listing .meta li {
	margin: 0;
	padding: 0;
	color: var(--ndt-jobs-muted);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
}

.ndt-jobs-feed ul.job_listings li.job_listing .meta .job-type,
.ndt-jobs-feed ul.job_listings li.job_listing .meta .job-type.full-time,
.ndt-jobs-feed ul.job_listings li.job_listing .meta .job-type.part-time,
.ndt-jobs-feed ul.job_listings li.job_listing .meta .job-type.internship,
.ndt-jobs-feed ul.job_listings li.job_listing .meta .job-type.temporary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 30px;
	padding: 8px 12px;
	border-radius: 999px;
	background: var(--ndt-jobs-pink-soft);
	color: var(--ndt-jobs-pink);
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* Featured / filled handling */

.ndt-jobs-feed ul.job_listings li.job_listing.job_position_featured a {
	border-color: rgba(255, 0, 109, 0.24);
	background:
		linear-gradient(180deg, rgba(255, 0, 109, 0.05), #ffffff 56%);
}

.ndt-jobs-feed ul.job_listings li.job_listing.job_position_filled a {
	opacity: 0.72;
}

/* No jobs found */

.ndt-jobs-feed .no_job_listings_found {
	padding: 28px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 22px;
	background: #ffffff;
	color: var(--ndt-jobs-muted);
	font-size: 16px;
	font-weight: 800;
	text-align: center;
}

/* =========================================================
   Load More
   ========================================================= */

.ndt-jobs-feed .load_more_jobs {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	width: fit-content;
	margin: 28px auto 0;
	padding: 14px 24px;
	border: 0;
	border-radius: 999px;
	background: var(--ndt-jobs-navy);
	color: #ffffff;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 14px 32px rgba(11, 31, 61, 0.18);
}

.ndt-jobs-feed .load_more_jobs:hover,
.ndt-jobs-feed .load_more_jobs:focus {
	background: var(--ndt-jobs-pink);
	color: #ffffff;
	text-decoration: none;
}

/* =========================================================
   Responsive
   ========================================================= */

@media (max-width: 980px) {
	.ndt-jobs-feed ul.job_listings li.job_listing a {
		grid-template-columns: 54px minmax(0, 1fr);
	}

	.ndt-jobs-feed ul.job_listings li.job_listing .location,
	.ndt-jobs-feed ul.job_listings li.job_listing .meta {
		grid-column: 2;
		text-align: left;
		justify-items: start;
	}

	.ndt-jobs-feed ul.job_listings li.job_listing .meta {
		display: flex;
		flex-wrap: wrap;
	}
}

@media (max-width: 720px) {
	.ndt-jobs-feed {
		padding: 14px;
	}

	.ndt-jobs-feed .job_filters .search_jobs {
	grid-template-columns: 1fr;
	padding: 18px;
}

.ndt-jobs-feed .job_filters .search_jobs::before,
.ndt-jobs-feed .job_filters .search_keywords,
.ndt-jobs-feed .job_filters .search_location,
.ndt-jobs-feed .job_filters .search_submit,
.ndt-jobs-feed .job_filters .search_jobs > div:not(.search_keywords):not(.search_location):not(.search_submit),
.ndt-jobs-feed .job_filters .search_jobs > div:not(.search_keywords):not(.search_location):not(.search_submit):nth-of-type(4),
.ndt-jobs-feed .job_filters .search_jobs > div:not(.search_keywords):not(.search_location):not(.search_submit):nth-of-type(5),
.ndt-jobs-feed .job_filters .search_jobs > div:not(.search_keywords):not(.search_location):not(.search_submit):nth-of-type(6) {
	grid-column: 1;
	grid-row: auto;
}

	.ndt-jobs-feed .job_filters .job_types {
		padding: 16px 18px;
	}

	.ndt-jobs-feed ul.job_listings li.job_listing a {
		grid-template-columns: 1fr;
		gap: 14px;
		padding: 18px;
		border-radius: 20px;
	}

	.ndt-jobs-feed ul.job_listings li.job_listing img.company_logo {
		width: 50px;
		height: 50px;
	}

	.ndt-jobs-feed ul.job_listings li.job_listing .location,
	.ndt-jobs-feed ul.job_listings li.job_listing .meta {
		grid-column: auto;
	}

	.ndt-jobs-feed ul.job_listings li.job_listing .position h3 {
		font-size: 19px;
	}

	.ndt-jobs-feed .load_more_jobs {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs Custom Jobs Page
   ========================================================= */

.ndt-custom-jobs {
	--ndt-jobs-navy: #0B1F3D;
	--ndt-jobs-dark: #07172E;
	--ndt-jobs-pink: #FF006D;
	--ndt-jobs-pink-soft: rgba(255, 0, 109, 0.12);
	--ndt-jobs-ink: #101828;
	--ndt-jobs-muted: #667085;
	--ndt-jobs-border: rgba(11, 31, 61, 0.12);
	--ndt-jobs-soft: #F7F9FC;
	--ndt-jobs-shadow: 0 24px 70px rgba(11, 31, 61, 0.12);

	background: #f7f9fc;
	color: var(--ndt-jobs-ink);
	overflow-x: hidden;
}

.ndt-custom-jobs *,
.ndt-custom-jobs *::before,
.ndt-custom-jobs *::after {
	box-sizing: border-box;
}

.ndt-custom-jobs h1,
.ndt-custom-jobs h2,
.ndt-custom-jobs h3,
.ndt-custom-jobs p {
	margin-top: 0;
}

.ndt-custom-jobs h1,
.ndt-custom-jobs h2,
.ndt-custom-jobs h3 {
	color: var(--ndt-jobs-navy);
	line-height: 1.06;
	letter-spacing: -0.035em;
}

.ndt-custom-jobs h1 {
	max-width: 880px;
	margin-bottom: 18px;
	font-size: clamp(40px, 5.6vw, 72px);
}

.ndt-custom-jobs h2 {
	margin-bottom: 8px;
	font-size: clamp(28px, 3vw, 40px);
}

.ndt-custom-jobs p {
	color: var(--ndt-jobs-muted);
	font-size: 17px;
	line-height: 1.65;
}

/* Hero */

.ndt-custom-jobs-hero {
	padding: clamp(58px, 7vw, 96px) 0 46px;
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.14), transparent 34%),
		linear-gradient(135deg, #ffffff 0%, #f7f9fc 58%, #eef3f9 100%);
}

.ndt-custom-jobs-hero-inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 30px;
	align-items: end;
}

.ndt-custom-jobs-hero-copy p:last-child {
	max-width: 800px;
	margin-bottom: 0;
	font-size: clamp(17px, 2vw, 20px);
}

.ndt-custom-jobs-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: flex-end;
}

/* Main */

.ndt-custom-jobs-main {
	padding: 34px 0 clamp(74px, 8vw, 110px);
}

/* Filter Card */

.ndt-custom-jobs-filter-card {
	margin: 0 0 26px;
	padding: 28px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 28px;
	background:
		radial-gradient(circle at top right, rgba(255, 0, 109, 0.09), transparent 38%),
		#ffffff;
	box-shadow: var(--ndt-jobs-shadow);
}

.ndt-custom-jobs-filter-header {
	margin-bottom: 22px;
}

.ndt-custom-jobs-filter-header h2 {
	margin-bottom: 8px;
}

.ndt-custom-jobs-filter-header p {
	margin-bottom: 0;
	font-size: 16px;
}

.ndt-custom-jobs-filter-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 18px;
	align-items: end;
}

.ndt-custom-jobs-field {
	display: grid;
	gap: 8px;
}

.ndt-custom-jobs-field:nth-child(1),
.ndt-custom-jobs-field:nth-child(2) {
	grid-column: span 3;
}

.ndt-custom-jobs-field:nth-child(3),
.ndt-custom-jobs-field:nth-child(4),
.ndt-custom-jobs-field:nth-child(5),
.ndt-custom-jobs-field:nth-child(6) {
	grid-column: span 2;
}

.ndt-custom-jobs-field label {
	color: var(--ndt-jobs-navy);
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-custom-jobs-field input,
.ndt-custom-jobs-field select {
	width: 100%;
	min-height: 52px;
	padding: 13px 16px;
	border: 1px solid rgba(11, 31, 61, 0.16);
	border-radius: 16px;
	background: #ffffff;
	color: var(--ndt-jobs-navy);
	font-size: 15px;
	line-height: 1.4;
	box-shadow: none;
}

.ndt-custom-jobs-field input:focus,
.ndt-custom-jobs-field select:focus {
	outline: none;
	border-color: rgba(255, 0, 109, 0.55);
	box-shadow: 0 0 0 4px rgba(255, 0, 109, 0.10);
}

.ndt-custom-jobs-filter-actions {
	grid-column: 1 / -1;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
	justify-content: flex-end;
	padding-top: 4px;
}

.ndt-custom-jobs-filter-actions button,
.ndt-custom-jobs-filter-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 13px 24px;
	border: 0;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
}

.ndt-custom-jobs-filter-actions button {
	background: var(--ndt-jobs-pink);
	color: #ffffff;
	box-shadow: 0 12px 28px rgba(255, 0, 109, 0.20);
}

.ndt-custom-jobs-filter-actions button:hover,
.ndt-custom-jobs-filter-actions button:focus {
	background: #e60061;
	color: #ffffff;
}

.ndt-custom-jobs-filter-actions a {
	background: rgba(11, 31, 61, 0.08);
	color: var(--ndt-jobs-navy);
}

.ndt-custom-jobs-filter-actions a:hover,
.ndt-custom-jobs-filter-actions a:focus {
	background: rgba(255, 0, 109, 0.12);
	color: var(--ndt-jobs-pink);
	text-decoration: none;
}

/* Results Header */

.ndt-custom-jobs-results-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 22px;
	margin: 0 0 18px;
	padding-top: 10px;
}

.ndt-custom-jobs-results-header h2 {
	margin-bottom: 0;
}

.ndt-custom-jobs-active-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: flex-end;
}

.ndt-custom-jobs-active-filters span {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 8px 12px;
	border-radius: 999px;
	background: #ffffff;
	color: var(--ndt-jobs-navy);
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	box-shadow: 0 8px 20px rgba(11, 31, 61, 0.05);
}

/* Job Cards */

.ndt-custom-jobs-list {
	display: grid;
	gap: 16px;
}

.ndt-custom-job-card {
	margin: 0;
}

.ndt-custom-job-card-link {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) minmax(180px, 0.32fr) minmax(150px, 0.24fr);
	gap: 18px;
	align-items: center;
	min-height: 116px;
	padding: 22px 24px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 24px;
	background: #ffffff;
	color: var(--ndt-jobs-ink);
	text-decoration: none;
	box-shadow: 0 10px 30px rgba(11, 31, 61, 0.05);
	transition:
		transform 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease;
}

.ndt-custom-job-card-link:hover,
.ndt-custom-job-card-link:focus {
	transform: translateY(-2px);
	border-color: rgba(255, 0, 109, 0.28);
	box-shadow: 0 18px 48px rgba(11, 31, 61, 0.10);
	text-decoration: none;
}

.ndt-custom-job-logo {
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	border: 1px solid rgba(11, 31, 61, 0.09);
	border-radius: 16px;
	background: #f7f9fc;
	overflow: hidden;
}

.ndt-custom-job-logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ndt-custom-job-logo span {
	color: rgba(11, 31, 61, 0.42);
	font-size: 13px;
	font-weight: 900;
	letter-spacing: -0.03em;
}

.ndt-custom-job-main h3 {
	margin: 0 0 6px;
	color: var(--ndt-jobs-navy);
	font-size: 21px;
	font-weight: 900;
	line-height: 1.15;
	letter-spacing: -0.03em;
}

.ndt-custom-job-main p {
	margin-bottom: 12px;
	color: var(--ndt-jobs-muted);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.35;
}

.ndt-custom-job-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.ndt-custom-job-tags span {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 7px 10px;
	border-radius: 999px;
	background: #f7f9fc;
	color: var(--ndt-jobs-navy);
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
}

.ndt-custom-job-location {
	display: grid;
	gap: 6px;
}

.ndt-custom-job-location span {
	color: #5b6b84;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-custom-job-location strong {
	color: var(--ndt-jobs-navy);
	font-size: 16px;
	font-weight: 900;
	line-height: 1.35;
}

.ndt-custom-job-meta {
	display: grid;
	justify-items: end;
	gap: 9px;
	text-align: right;
}

.ndt-custom-job-type,
.ndt-custom-job-match {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 30px;
	padding: 8px 12px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-custom-job-type {
	background: var(--ndt-jobs-pink-soft);
	color: var(--ndt-jobs-pink);
}

.ndt-custom-job-match {
	background: rgba(11, 31, 61, 0.08);
	color: var(--ndt-jobs-navy);
}

.ndt-custom-job-date {
	color: var(--ndt-jobs-muted);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
}

/* Empty State */

.ndt-custom-jobs-empty {
	padding: 34px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 26px;
	background: #ffffff;
	box-shadow: 0 14px 40px rgba(11, 31, 61, 0.06);
	text-align: center;
}

.ndt-custom-jobs-empty h3 {
	margin-bottom: 10px;
	font-size: 30px;
}

.ndt-custom-jobs-empty p {
	max-width: 560px;
	margin: 0 auto 20px;
}

.ndt-custom-jobs-empty a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 22px;
	border-radius: 999px;
	background: var(--ndt-jobs-navy);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
}

.ndt-custom-jobs-empty a:hover,
.ndt-custom-jobs-empty a:focus {
	background: var(--ndt-jobs-pink);
	color: #ffffff;
	text-decoration: none;
}

/* Pagination */

.ndt-custom-jobs-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	margin-top: 30px;
}

.ndt-custom-jobs-pagination a,
.ndt-custom-jobs-pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 11px 18px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
}

.ndt-custom-jobs-pagination a {
	background: var(--ndt-jobs-navy);
	color: #ffffff;
}

.ndt-custom-jobs-pagination a:hover,
.ndt-custom-jobs-pagination a:focus {
	background: var(--ndt-jobs-pink);
	color: #ffffff;
	text-decoration: none;
}

.ndt-custom-jobs-pagination span {
	background: #ffffff;
	color: var(--ndt-jobs-navy);
}

.ndt-custom-jobs-hero .ndt-home-btn-primary {
	background: var(--ndt-jobs-pink);
	color: #ffffff;
	border-color: var(--ndt-jobs-pink);
	box-shadow: 0 16px 36px rgba(255, 0, 109, 0.22);
}

.ndt-custom-jobs-hero .ndt-home-btn-primary:hover,
.ndt-custom-jobs-hero .ndt-home-btn-primary:focus {
	background: #e60061;
	color: #ffffff;
	border-color: #e60061;
	text-decoration: none;
}

/* Responsive */

@media (max-width: 1080px) {
	.ndt-custom-jobs-filter-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ndt-custom-jobs-field:nth-child(1),
	.ndt-custom-jobs-field:nth-child(2),
	.ndt-custom-jobs-field:nth-child(3),
	.ndt-custom-jobs-field:nth-child(4),
	.ndt-custom-jobs-field:nth-child(5) {
		grid-column: span 1;
	}

	.ndt-custom-job-card-link {
		grid-template-columns: 64px minmax(0, 1fr);
	}

	.ndt-custom-job-location,
	.ndt-custom-job-meta {
		grid-column: 2;
	}

	.ndt-custom-job-meta {
		display: flex;
		flex-wrap: wrap;
		justify-items: start;
		justify-content: flex-start;
		text-align: left;
	}
}

@media (max-width: 900px) {
	.ndt-custom-jobs-hero-inner,
	.ndt-custom-jobs-results-header {
		display: grid;
		grid-template-columns: 1fr;
		align-items: start;
	}

	.ndt-custom-jobs-hero-actions,
	.ndt-custom-jobs-active-filters {
		justify-content: flex-start;
	}
}

@media (max-width: 720px) {
	.ndt-custom-jobs h1 {
		font-size: clamp(36px, 11vw, 52px);
	}

	.ndt-custom-jobs h2 {
		font-size: clamp(26px, 8vw, 34px);
	}

	.ndt-custom-jobs-hero-actions,
	.ndt-custom-jobs-hero-actions .ndt-home-btn {
		width: 100%;
	}

	.ndt-custom-jobs-filter-card {
		padding: 20px;
		border-radius: 22px;
	}

	.ndt-custom-jobs-filter-grid {
		grid-template-columns: 1fr;
	}

	.ndt-custom-jobs-filter-actions {
		justify-content: stretch;
	}

	.ndt-custom-jobs-filter-actions button,
	.ndt-custom-jobs-filter-actions a {
		width: 100%;
	}

	.ndt-custom-job-card-link {
		grid-template-columns: 1fr;
		gap: 16px;
		padding: 20px;
		border-radius: 22px;
	}

	.ndt-custom-job-location,
	.ndt-custom-job-meta {
		grid-column: auto;
	}

	.ndt-custom-job-main h3 {
		font-size: 21px;
	}

	.ndt-custom-job-logo {
		width: 58px;
		height: 58px;
	}

	.ndt-custom-jobs-pagination {
		display: grid;
		grid-template-columns: 1fr;
	}

	.ndt-custom-jobs-pagination a,
	.ndt-custom-jobs-pagination span {
		width: 100%;
	}
}

/* Match badge states */

.ndt-custom-job-match {
	max-width: 190px;
	text-align: center;
}

.ndt-custom-job-match-score {
	background: rgba(11, 31, 61, 0.08);
	color: var(--ndt-jobs-navy);
}

.ndt-custom-job-match-muted {
	background: #f7f9fc;
	color: #5b6b84;
	letter-spacing: 0;
	text-transform: none;
}

/* Better empty state */

.ndt-custom-jobs-empty {
	display: grid;
	justify-items: center;
	padding: clamp(34px, 5vw, 54px);
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 28px;
	background:
		radial-gradient(circle at top right, rgba(255, 0, 109, 0.08), transparent 38%),
		#ffffff;
	box-shadow: 0 14px 40px rgba(11, 31, 61, 0.06);
	text-align: center;
}

.ndt-custom-jobs-empty-icon {
	display: grid;
	place-items: center;
	width: 68px;
	height: 68px;
	margin-bottom: 18px;
	border-radius: 20px;
	background: var(--ndt-jobs-pink-soft);
	color: var(--ndt-jobs-pink);
	font-size: 15px;
	font-weight: 900;
	letter-spacing: -0.03em;
}

.ndt-custom-jobs-empty h3 {
	max-width: 640px;
	margin-bottom: 10px;
	font-size: clamp(28px, 4vw, 42px);
}

.ndt-custom-jobs-empty p {
	max-width: 620px;
	margin: 0 auto 22px;
}

.ndt-custom-jobs-empty-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
}

.ndt-custom-jobs-empty-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 22px;
	border-radius: 999px;
	background: var(--ndt-jobs-navy);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
}

.ndt-custom-jobs-empty-actions a:hover,
.ndt-custom-jobs-empty-actions a:focus {
	background: var(--ndt-jobs-pink);
	color: #ffffff;
	text-decoration: none;
}

.ndt-custom-jobs-empty-actions .ndt-custom-jobs-empty-secondary {
	background: rgba(11, 31, 61, 0.08);
	color: var(--ndt-jobs-navy);
}

.ndt-custom-jobs-empty-actions .ndt-custom-jobs-empty-secondary:hover,
.ndt-custom-jobs-empty-actions .ndt-custom-jobs-empty-secondary:focus {
	background: var(--ndt-jobs-pink-soft);
	color: var(--ndt-jobs-pink);
}

.ndt-custom-jobs-sort-field small {
	display: block;
	margin-top: 8px;
	color: var(--ndt-jobs-muted);
	font-size: 12px;
	font-weight: 800;
	line-height: 1.35;
}

@media (max-width: 720px) {
	.ndt-custom-jobs-empty-actions {
		width: 100%;
	}

	.ndt-custom-jobs-empty-actions a {
		width: 100%;
	}
}

/* Advanced job filters */

.ndt-custom-jobs-advanced {
	grid-column: 1 / -1;
	margin-top: 2px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 20px;
	background: rgba(247, 249, 252, 0.82);
	overflow: hidden;
}

.ndt-custom-jobs-advanced summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 50px;
	padding: 15px 18px;
	color: var(--ndt-jobs-navy);
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	cursor: pointer;
	list-style: none;
}

.ndt-custom-jobs-advanced summary::-webkit-details-marker {
	display: none;
}

.ndt-custom-jobs-advanced summary::after {
	content: "+";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 999px;
	background: #ffffff;
	color: var(--ndt-jobs-pink);
	font-size: 18px;
	font-weight: 900;
	line-height: 1;
	box-shadow: 0 8px 18px rgba(11, 31, 61, 0.06);
}

.ndt-custom-jobs-advanced[open] summary::after {
	content: "−";
}

.ndt-custom-jobs-advanced summary span {
	display: inline-flex;
	align-items: center;
	min-height: 26px;
	margin-left: auto;
	padding: 7px 10px;
	border-radius: 999px;
	background: var(--ndt-jobs-pink-soft);
	color: var(--ndt-jobs-pink);
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-custom-jobs-advanced-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 18px;
	padding: 18px;
	border-top: 1px solid rgba(11, 31, 61, 0.08);
	background: #ffffff;
}

.ndt-custom-jobs-advanced-grid .ndt-custom-jobs-field {
	grid-column: span 2;
}

.ndt-custom-jobs-advanced-grid .ndt-custom-jobs-field:nth-child(4),
.ndt-custom-jobs-advanced-grid .ndt-custom-jobs-field:nth-child(5) {
	grid-column: span 3;
}

@media (max-width: 1080px) {
	.ndt-custom-jobs-advanced-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ndt-custom-jobs-advanced-grid .ndt-custom-jobs-field,
	.ndt-custom-jobs-advanced-grid .ndt-custom-jobs-field:nth-child(4),
	.ndt-custom-jobs-advanced-grid .ndt-custom-jobs-field:nth-child(5) {
		grid-column: span 1;
	}
}

@media (max-width: 720px) {
	.ndt-custom-jobs-advanced-grid {
		grid-template-columns: 1fr;
		padding: 16px;
	}

	.ndt-custom-jobs-advanced summary {
		align-items: flex-start;
		flex-wrap: wrap;
	}
}

/* =========================================================
   NDT Jobs - Single Job Listing Page
   Template: single-job_listing.php
========================================================= */

body.ndt-single-job-page {
	background: #f7f9fc;
	color: #101828;
}

body.ndt-single-job-page .wp-site-blocks {
	background: #f7f9fc;
}

.ndt-single-job {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.10), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #f7f9fc 34rem, #f7f9fc 100%);
	padding: 44px 20px 72px;
}

.ndt-single-job__container {
	width: min(1180px, 100%);
	margin: 0 auto;
}

.ndt-single-job__back {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 22px;
	padding: 10px 14px;
	border: 1px solid rgba(11, 31, 61, 0.14);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 800;
	text-decoration: none;
	box-shadow: 0 12px 34px rgba(11, 31, 61, 0.08);
}

.ndt-single-job__back:hover {
	border-color: rgba(255, 0, 109, 0.35);
	color: #ff006d;
}

.ndt-single-job__hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 28px;
	align-items: center;
	margin-bottom: 28px;
	padding: 34px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.90);
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.12);
	overflow: hidden;
	position: relative;
}

.ndt-single-job__hero::before {
	content: "";
	position: absolute;
	inset: 0 auto 0 0;
	width: 7px;
	background: #ff006d;
}

.ndt-single-job__hero-main,
.ndt-single-job__hero-actions {
	position: relative;
	z-index: 1;
}

.ndt-single-job__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 10px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-single-job__hero h1 {
	margin: 0;
	color: #0b1f3d;
	font-size: clamp(38px, 5vw, 64px);
	line-height: 0.96;
	letter-spacing: -0.055em;
	font-weight: 900;
}

.ndt-single-job__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 18px;
	margin-top: 18px;
	color: #667085;
	font-size: 16px;
	font-weight: 700;
}

.ndt-single-job__meta span {
	display: inline-flex;
	align-items: center;
}

.ndt-single-job__meta span:not(:last-child)::after {
	content: "";
	width: 5px;
	height: 5px;
	margin-left: 18px;
	border-radius: 999px;
	background: rgba(102, 112, 133, 0.45);
}

.ndt-single-job__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 380px;
	gap: 28px;
	align-items: start;
}

.ndt-single-job__main {
	display: grid;
	gap: 22px;
}

.ndt-single-job__sidebar {
	display: grid;
	gap: 22px;
	position: sticky;
	top: 96px;
}

.ndt-single-job__card {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.10);
	overflow: hidden;
}

.ndt-single-job__main > .ndt-single-job__card {
	padding: 28px;
}

.ndt-single-job__sidebar > .ndt-single-job__card {
	padding: 24px;
}

.ndt-single-job__card-header {
	margin-bottom: 22px;
}

.ndt-single-job__card-header h2,
.ndt-single-job__apply-card h2,
.ndt-single-job__company-card h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: 26px;
	line-height: 1.08;
	letter-spacing: -0.035em;
	font-weight: 900;
}

.ndt-single-job__card-header p,
.ndt-single-job__apply-card p,
.ndt-single-job__company-card p {
	margin: 8px 0 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
}

.ndt-single-job__detail-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.ndt-single-job__detail {
	min-height: 92px;
	padding: 17px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 20px;
	background: #f7f9fc;
}

.ndt-single-job__detail span {
	display: block;
	margin-bottom: 8px;
	color: #667085;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.ndt-single-job__detail strong {
	display: block;
	color: #0b1f3d;
	font-size: 17px;
	line-height: 1.25;
	font-weight: 900;
}

.ndt-single-job__description {
	color: #101828;
	font-size: 17px;
	line-height: 1.75;
}

.ndt-single-job__description p {
	margin: 0 0 18px;
}

.ndt-single-job__description p:last-child {
	margin-bottom: 0;
}

.ndt-single-job__description ul,
.ndt-single-job__description ol {
	margin: 0 0 20px 22px;
	padding: 0;
}

.ndt-single-job__description li {
	margin-bottom: 8px;
}

.ndt-single-job__description h2,
.ndt-single-job__description h3,
.ndt-single-job__description h4 {
	margin: 28px 0 12px;
	color: #0b1f3d;
	line-height: 1.15;
	font-weight: 900;
	letter-spacing: -0.025em;
}

.ndt-single-job__apply-card {
	border-color: rgba(255, 0, 109, 0.22);
	box-shadow:
		0 24px 70px rgba(11, 31, 61, 0.12),
		0 0 0 6px rgba(255, 0, 109, 0.045);
}

.ndt-single-job__button,
.ndt-single-job__apply-card .ndt-apply-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 13px 18px;
	border: 1px solid transparent;
	border-radius: 14px;
	background: #ff006d;
	color: #ffffff;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}

.ndt-single-job__button:hover,
.ndt-single-job__apply-card .ndt-apply-button:hover {
	transform: translateY(-1px);
	background: #0b1f3d;
	color: #ffffff;
	box-shadow: 0 14px 34px rgba(11, 31, 61, 0.18);
}

.ndt-single-job__button--dark,
.ndt-single-job__apply-card .ndt-apply-button:not(.ndt-apply-button-secondary) {
	background: #0b1f3d;
	color: #ffffff;
}

.ndt-single-job__button--dark:hover,
.ndt-single-job__apply-card .ndt-apply-button:not(.ndt-apply-button-secondary):hover {
	background: #ff006d;
	color: #ffffff;
}

.ndt-single-job__button--secondary,
.ndt-single-job__apply-card .ndt-apply-button-secondary {
	border-color: rgba(11, 31, 61, 0.14);
	background: #f7f9fc;
	color: #0b1f3d;
}

.ndt-single-job__button--secondary:hover,
.ndt-single-job__apply-card .ndt-apply-button-secondary:hover {
	border-color: #ff006d;
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
	box-shadow: none;
}

.ndt-single-job__button--full {
	width: 100%;
}

.ndt-single-job__button-row,
.ndt-single-job__apply-card .ndt-apply-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 18px;
}

.ndt-single-job__fine-print {
	margin-top: 14px !important;
	color: #667085 !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
}

.ndt-single-job__apply-card .ndt-apply-box {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.ndt-single-job__apply-card .ndt-apply-box h3 {
	margin: 0 0 10px;
	color: #0b1f3d;
	font-size: 26px;
	line-height: 1.08;
	letter-spacing: -0.035em;
	font-weight: 900;
}

.ndt-single-job__apply-card .ndt-apply-box p {
	margin: 0 0 16px;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
}

.ndt-single-job__apply-card .ndt-apply-preview {
	margin: 18px 0;
	padding: 16px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-single-job__apply-card .ndt-apply-preview h4,
.ndt-single-job__apply-card .ndt-apply-missing-fields h4 {
	margin: 0 0 10px;
	color: #0b1f3d;
	font-size: 15px;
	font-weight: 900;
}

.ndt-single-job__apply-card .ndt-apply-preview ul,
.ndt-single-job__apply-card .ndt-apply-missing-fields ul {
	margin: 0;
	padding-left: 18px;
	color: #101828;
	font-size: 14px;
	line-height: 1.55;
}

.ndt-single-job__apply-card .ndt-apply-message {
	margin: 0 0 14px;
	padding: 12px 14px;
	border-radius: 14px;
	font-size: 14px;
	font-weight: 800;
}

.ndt-single-job__apply-card .ndt-apply-message-error {
	border: 1px solid rgba(180, 35, 24, 0.20);
	background: rgba(254, 243, 242, 0.95);
	color: #b42318;
}

.ndt-single-job__apply-card .ndt-apply-box-success {
	padding: 18px;
	border: 1px solid rgba(18, 183, 106, 0.28);
	border-radius: 20px;
	background: rgba(236, 253, 243, 0.95);
}

.ndt-single-job__apply-card .ndt-apply-box-success h3 {
	color: #027a48;
}

.ndt-single-job__apply-card .ndt-apply-box-success p {
	color: #344054;
}

.ndt-single-job__apply-card .ndt-apply-box-blocked {
	padding: 18px;
	border: 1px solid rgba(247, 144, 9, 0.28);
	border-radius: 20px;
	background: rgba(255, 250, 235, 0.95);
}

.ndt-single-job__apply-card .ndt-apply-box-blocked h3 {
	color: #b54708;
}

.ndt-single-job__company-card {
	display: grid;
	gap: 18px;
}

.ndt-single-job__company-head {
	display: grid;
	grid-template-columns: 74px minmax(0, 1fr);
	gap: 16px;
	align-items: center;
}

.ndt-single-job__company-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 74px;
	height: 74px;
	border-radius: 20px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 32px;
	font-weight: 900;
	overflow: hidden;
}

.ndt-single-job__company-logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ndt-single-job__company-head .ndt-single-job__eyebrow {
	margin-bottom: 4px;
}

.ndt-single-job__company-card h2 {
	font-size: 22px;
}

.ndt-single-job__company-copy {
	margin: 0 !important;
	color: #344054 !important;
}

@media (max-width: 980px) {
	.ndt-single-job {
		padding: 30px 16px 56px;
	}

	.ndt-single-job__hero {
		grid-template-columns: 1fr;
		padding: 28px;
	}

	.ndt-single-job__layout {
		grid-template-columns: 1fr;
	}

	.ndt-single-job__sidebar {
		position: static;
		order: -1;
	}

	.ndt-single-job__hero-actions {
		display: none;
	}
}

@media (max-width: 680px) {
	.ndt-single-job__hero {
		border-radius: 24px;
		padding: 24px;
	}

	.ndt-single-job__hero h1 {
		font-size: 38px;
	}

	.ndt-single-job__meta {
		display: grid;
		gap: 8px;
	}

	.ndt-single-job__meta span:not(:last-child)::after {
		display: none;
	}

	.ndt-single-job__main > .ndt-single-job__card,
	.ndt-single-job__sidebar > .ndt-single-job__card {
		padding: 20px;
		border-radius: 22px;
	}

	.ndt-single-job__detail-grid {
		grid-template-columns: 1fr;
	}

	.ndt-single-job__detail {
		min-height: auto;
	}

	.ndt-single-job__button-row,
	.ndt-single-job__apply-card .ndt-apply-actions {
		display: grid;
	}

	.ndt-single-job__button,
	.ndt-single-job__apply-card .ndt-apply-button {
		width: 100%;
	}

	.ndt-single-job__company-head {
		grid-template-columns: 62px minmax(0, 1fr);
	}

	.ndt-single-job__company-logo {
		width: 62px;
		height: 62px;
		border-radius: 17px;
		font-size: 26px;
	}
}

/* =========================================================
   NDT Jobs - Single Job Sidebar / Apply State Polish
========================================================= */

/* Sidebar card spacing cleanup */
.ndt-single-job__sidebar > .ndt-single-job__card {
	padding: 28px;
}

/* Apply card should feel like the primary action area */
.ndt-single-job__apply-card {
	position: relative;
	background:
		linear-gradient(180deg, #ffffff 0%, #ffffff 58%, #fff7fb 100%);
	border: 1px solid rgba(255, 0, 109, 0.22);
	border-radius: 30px;
	box-shadow:
		0 26px 72px rgba(11, 31, 61, 0.14),
		0 0 0 6px rgba(255, 0, 109, 0.045);
}

.ndt-single-job__apply-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 28px;
	right: 28px;
	height: 4px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

/* Normalize shortcode wrapper inside our custom sidebar */
.ndt-single-job__apply-card .ndt-apply-box {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.ndt-single-job__apply-card .ndt-apply-box h3 {
	margin: 0 0 10px;
	color: #0b1f3d;
	font-size: 28px;
	line-height: 1.05;
	letter-spacing: -0.04em;
	font-weight: 900;
}

.ndt-single-job__apply-card .ndt-apply-box p {
	margin: 0 0 18px;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
}

/* Button row */
.ndt-single-job__apply-card .ndt-apply-actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	margin-top: 18px;
}

/* Make shortcode buttons fit the sidebar better */
.ndt-single-job__apply-card .ndt-apply-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 52px;
	padding: 14px 18px;
	border: 1px solid transparent;
	border-radius: 16px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}

.ndt-single-job__apply-card .ndt-apply-button:hover {
	transform: translateY(-1px);
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 14px 34px rgba(11, 31, 61, 0.18);
}

.ndt-single-job__apply-card .ndt-apply-button-secondary {
	border-color: rgba(11, 31, 61, 0.14);
	background: #f7f9fc;
	color: #0b1f3d;
}

.ndt-single-job__apply-card .ndt-apply-button-secondary:hover {
	border-color: rgba(255, 0, 109, 0.36);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
	box-shadow: none;
}

/* Confirm application preview */
.ndt-single-job__apply-card .ndt-apply-preview {
	margin: 18px 0;
	padding: 16px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 20px;
	background: #f7f9fc;
}

.ndt-single-job__apply-card .ndt-apply-preview h4 {
	margin: 0 0 10px;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0.02em;
}

.ndt-single-job__apply-card .ndt-apply-preview ul {
	margin: 0;
	padding-left: 18px;
	color: #101828;
	font-size: 14px;
	line-height: 1.65;
}

.ndt-single-job__apply-card .ndt-apply-preview li {
	margin-bottom: 6px;
}

/* Already applied / submitted success state */
.ndt-single-job__apply-card .ndt-apply-box-success {
	padding: 22px;
	border: 1px solid rgba(18, 183, 106, 0.30);
	border-radius: 24px;
	background:
		linear-gradient(180deg, rgba(236, 253, 243, 0.98), rgba(236, 253, 243, 0.82));
	box-shadow: none;
}

.ndt-single-job__apply-card .ndt-apply-box-success h3 {
	margin-bottom: 8px;
	color: #027a48;
	font-size: 26px;
}

.ndt-single-job__apply-card .ndt-apply-box-success p {
	margin: 0;
	color: #344054;
}

/* Blocked profile completion state */
.ndt-single-job__apply-card .ndt-apply-box-blocked {
	padding: 22px;
	border: 1px solid rgba(247, 144, 9, 0.34);
	border-radius: 24px;
	background:
		linear-gradient(180deg, rgba(255, 250, 235, 0.98), rgba(255, 250, 235, 0.84));
	box-shadow: none;
}

.ndt-single-job__apply-card .ndt-apply-box-blocked h3 {
	margin-bottom: 10px;
	color: #b54708;
	font-size: 25px;
}

.ndt-single-job__apply-card .ndt-apply-box-blocked p {
	color: #344054;
}

.ndt-single-job__apply-card .ndt-apply-missing-fields {
	margin: 16px 0 18px;
	padding: 16px;
	border: 1px solid rgba(247, 144, 9, 0.22);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.72);
}

.ndt-single-job__apply-card .ndt-apply-missing-fields h4 {
	margin: 0 0 10px;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
}

.ndt-single-job__apply-card .ndt-apply-missing-fields ul {
	margin: 0;
	padding-left: 18px;
	color: #344054;
	font-size: 14px;
	line-height: 1.6;
}

/* Error message state */
.ndt-single-job__apply-card .ndt-apply-message {
	margin: 0 0 16px;
	padding: 13px 15px;
	border-radius: 16px;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.45;
}

.ndt-single-job__apply-card .ndt-apply-message-error {
	border: 1px solid rgba(180, 35, 24, 0.22);
	background: rgba(254, 243, 242, 0.96);
	color: #b42318;
}

/* Off-site apply card text */
.ndt-single-job__apply-card > h2 {
	margin: 0 0 10px;
	color: #0b1f3d;
	font-size: 28px;
	line-height: 1.05;
	letter-spacing: -0.04em;
	font-weight: 900;
}

.ndt-single-job__apply-card > p {
	margin: 0 0 18px;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
}

.ndt-single-job__fine-print {
	display: block;
	margin: 14px 0 0 !important;
	padding-top: 14px;
	border-top: 1px solid rgba(11, 31, 61, 0.10);
	color: #667085 !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
}

/* Company card polish */
.ndt-single-job__company-card {
	padding: 26px 26px 0 !important;
	background: #ffffff;
	border-radius: 28px;
	overflow: hidden;
}

.ndt-single-job__company-head {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	gap: 16px;
	align-items: center;
	padding-bottom: 20px;
}

.ndt-single-job__company-logo {
	width: 72px;
	height: 72px;
	border-radius: 20px;
	background:
		linear-gradient(135deg, #0b1f3d, #102c54);
	box-shadow: 0 12px 28px rgba(11, 31, 61, 0.18);
}

.ndt-single-job__company-card .ndt-single-job__eyebrow {
	margin: 0 0 4px;
}

.ndt-single-job__company-card h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: 23px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 900;
}

.ndt-single-job__company-card p {
	margin: 6px 0 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.45;
}

.ndt-single-job__company-copy {
	padding: 0 0 20px;
	color: #344054 !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
}

.ndt-single-job__company-card .ndt-single-job__button {
	width: calc(100% + 52px);
	margin-left: -26px;
	margin-right: -26px;
	border-radius: 0;
	min-height: 64px;
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
	background: #f7f9fc;
}

.ndt-single-job__company-card .ndt-single-job__button:hover {
	transform: none;
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
	box-shadow: none;
}

/* Mobile sidebar polish */
@media (max-width: 680px) {
	.ndt-single-job__sidebar > .ndt-single-job__card {
		padding: 22px;
	}

	.ndt-single-job__apply-card {
		border-radius: 24px;
	}

	.ndt-single-job__apply-card::before {
		left: 22px;
		right: 22px;
	}

	.ndt-single-job__apply-card .ndt-apply-box h3,
	.ndt-single-job__apply-card > h2 {
		font-size: 25px;
	}

	.ndt-single-job__apply-card .ndt-apply-box-success,
	.ndt-single-job__apply-card .ndt-apply-box-blocked {
		padding: 18px;
		border-radius: 20px;
	}

	.ndt-single-job__company-card {
		padding: 22px 22px 0 !important;
	}

	.ndt-single-job__company-head {
		grid-template-columns: 62px minmax(0, 1fr);
	}

	.ndt-single-job__company-logo {
		width: 62px;
		height: 62px;
		border-radius: 18px;
	}

	.ndt-single-job__company-card .ndt-single-job__button {
		width: calc(100% + 44px);
		margin-left: -22px;
		margin-right: -22px;
	}
}

/* =========================================================
   NDT Jobs - Single Job Sidebar Fixes
   Fix overflow, button fit, company card readability
========================================================= */

/* Make sure sidebar buttons and cards respect their container */
.ndt-single-job__sidebar *,
.ndt-single-job__apply-card *,
.ndt-single-job__company-card * {
	box-sizing: border-box;
}

/* Calm down the apply card a bit */
.ndt-single-job__apply-card {
	border-color: rgba(255, 0, 109, 0.18);
	box-shadow:
		0 22px 60px rgba(11, 31, 61, 0.12),
		0 0 0 4px rgba(255, 0, 109, 0.035);
}

.ndt-single-job__apply-card::before {
	left: 28px;
	right: 28px;
	height: 4px;
}

/* Fix apply shortcode buttons overflowing */
.ndt-single-job__apply-card .ndt-apply-actions {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
	margin-top: 18px;
}

.ndt-single-job__apply-card .ndt-apply-button,
.ndt-single-job__apply-card .ndt-apply-button-secondary {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin: 0;
	padding: 16px 18px;
	border-radius: 16px;
	white-space: normal;
}

/* Make the confirm button fit too */
.ndt-single-job__apply-card form {
	width: 100%;
	margin: 0;
}

.ndt-single-job__apply-card form .ndt-apply-button {
	width: 100%;
}

/* Success/already applied state should not feel cramped */
.ndt-single-job__apply-card .ndt-apply-box-success {
	padding: 24px;
	border-radius: 24px;
}

.ndt-single-job__apply-card .ndt-apply-box-success h3 {
	font-size: 26px;
	line-height: 1.1;
}

.ndt-single-job__apply-card .ndt-apply-box-success p {
	font-size: 15px;
	line-height: 1.55;
}

/* Company card: prevent long names from blowing out the card */
.ndt-single-job__company-card {
	min-width: 0;
	padding: 26px 26px 0 !important;
}

.ndt-single-job__company-head {
	grid-template-columns: 72px minmax(0, 1fr);
	min-width: 0;
	align-items: center;
}

.ndt-single-job__company-head > div:last-child {
	min-width: 0;
}

.ndt-single-job__company-card h2 {
	max-width: 100%;
	overflow-wrap: anywhere;
	word-break: break-word;
	hyphens: auto;
	font-size: 22px;
	line-height: 1.12;
}

/* Add a little more context to the company card visually */
.ndt-single-job__company-card .ndt-single-job__eyebrow {
	color: #ff006d;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* Make company website button less gigantic and more controlled */
.ndt-single-job__company-card .ndt-single-job__button {
	width: calc(100% + 52px);
	max-width: calc(100% + 52px);
	margin-left: -26px;
	margin-right: -26px;
	min-height: 58px;
	padding: 16px 20px;
	border-radius: 0;
	font-size: 15px;
}

/* If company description exists, make it feel like part of the card */
.ndt-single-job__company-copy {
	margin-top: 0 !important;
	padding: 0 0 22px;
	color: #344054 !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
}

/* Better spacing between apply and company cards */
.ndt-single-job__sidebar {
	gap: 26px;
}

/* Mobile fixes */
@media (max-width: 680px) {
	.ndt-single-job__apply-card::before {
		left: 22px;
		right: 22px;
	}

	.ndt-single-job__company-card {
		padding: 22px 22px 0 !important;
	}

	.ndt-single-job__company-card .ndt-single-job__button {
		width: calc(100% + 44px);
		max-width: calc(100% + 44px);
		margin-left: -22px;
		margin-right: -22px;
	}

	.ndt-single-job__company-card h2 {
		font-size: 21px;
	}
}

/* =========================================================
   NDT Jobs - Single Job Hero / Main Content Polish
========================================================= */

/* Slightly tighten the overall page spacing */
.ndt-single-job {
	padding-top: 34px;
}

.ndt-single-job__container {
	width: min(1160px, 100%);
}

/* Back button should feel useful but not oversized */
.ndt-single-job__back {
	margin-bottom: 18px;
	padding: 9px 14px;
	font-size: 14px;
	box-shadow: 0 10px 26px rgba(11, 31, 61, 0.07);
}

/* Hero polish */
.ndt-single-job__hero {
	min-height: 220px;
	padding: 36px 38px;
	margin-bottom: 30px;
	border-radius: 32px;
}

.ndt-single-job__hero::before {
	width: 6px;
}

.ndt-single-job__hero .ndt-single-job__eyebrow {
	margin-bottom: 12px;
}

.ndt-single-job__hero h1 {
	max-width: 880px;
	font-size: clamp(42px, 4.8vw, 68px);
	line-height: 0.98;
}

/* Meta row cleanup */
.ndt-single-job__meta {
	margin-top: 18px;
	gap: 9px 16px;
	font-size: 16px;
	line-height: 1.4;
}

.ndt-single-job__meta span {
	color: #667085;
	font-weight: 800;
}

.ndt-single-job__meta span:first-child {
	color: #0b1f3d;
}

.ndt-single-job__meta span:not(:last-child)::after {
	margin-left: 16px;
	background: rgba(102, 112, 133, 0.38);
}

/* Hero CTA should feel premium but not gigantic */
.ndt-single-job__hero-actions .ndt-single-job__button {
	min-width: 132px;
	min-height: 60px;
	padding: 18px 22px;
	border-radius: 16px;
	font-size: 15px;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.22);
}

.ndt-single-job__hero-actions .ndt-single-job__button:hover {
	box-shadow: 0 18px 42px rgba(11, 31, 61, 0.18);
}

/* Main layout balance */
.ndt-single-job__layout {
	grid-template-columns: minmax(0, 1fr) 380px;
	gap: 30px;
}

.ndt-single-job__main {
	gap: 24px;
}

/* Cards should feel consistent and less puffy */
.ndt-single-job__main > .ndt-single-job__card {
	padding: 30px;
	border-radius: 28px;
}

.ndt-single-job__card-header {
	margin-bottom: 24px;
}

.ndt-single-job__card-header h2 {
	font-size: 28px;
	letter-spacing: -0.04em;
}

.ndt-single-job__card-header p {
	margin-top: 8px;
	max-width: 680px;
	font-size: 15px;
}

/* Detail grid polish */
.ndt-single-job__detail-grid {
	gap: 16px;
}

.ndt-single-job__detail {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	min-height: 116px;
	padding: 20px;
	border-radius: 22px;
	background:
		linear-gradient(180deg, #f8fafc 0%, #f4f7fb 100%);
}

.ndt-single-job__detail span {
	margin-bottom: 10px;
	color: #667085;
	font-size: 12px;
	line-height: 1.2;
}

.ndt-single-job__detail strong {
	color: #001b41;
	font-size: 18px;
	line-height: 1.28;
}

/* Description card should read more like content */
.ndt-single-job__description-card {
	padding-bottom: 34px !important;
}

.ndt-single-job__description {
	max-width: 780px;
	color: #101828;
	font-size: 17px;
	line-height: 1.78;
}

.ndt-single-job__description p {
	margin-bottom: 18px;
}

.ndt-single-job__description strong {
	color: #0b1f3d;
}

/* Prevent empty or tiny descriptions from looking awkward */
.ndt-single-job__description:empty::before {
	content: "Job description not listed.";
	color: #667085;
}

/* Sidebar lines up a little nicer with content */
.ndt-single-job__sidebar {
	top: 90px;
}

/* Tablet */
@media (max-width: 980px) {
	.ndt-single-job__hero {
		min-height: unset;
		padding: 30px;
	}

	.ndt-single-job__layout {
		grid-template-columns: 1fr;
	}

	.ndt-single-job__sidebar {
		order: -1;
		position: static;
	}
}

/* Mobile */
@media (max-width: 680px) {
	.ndt-single-job {
		padding-top: 24px;
	}

	.ndt-single-job__hero {
		padding: 24px;
		border-radius: 24px;
	}

	.ndt-single-job__hero h1 {
		font-size: 40px;
		line-height: 1;
	}

	.ndt-single-job__meta {
		margin-top: 16px;
		font-size: 15px;
	}

	.ndt-single-job__main > .ndt-single-job__card {
		padding: 22px;
		border-radius: 24px;
	}

	.ndt-single-job__card-header h2 {
		font-size: 25px;
	}

	.ndt-single-job__detail {
		min-height: auto;
		padding: 18px;
	}

	.ndt-single-job__detail strong {
		font-size: 17px;
	}

	.ndt-single-job__description {
		font-size: 16px;
		line-height: 1.7;
	}
}

/* =========================================================
   NDT Jobs - Single Job Compact Details Card
   Combines Job Overview + NDT Snapshot
========================================================= */

/* =========================================================
   NDT Jobs - Single Job Details Compact Grouped Layout
========================================================= */

.ndt-single-job__details-card {
	padding: 26px 28px !important;
}

.ndt-single-job__details-header {
	margin-bottom: 20px;
}

.ndt-single-job__details-header h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: 28px;
	line-height: 1.08;
	letter-spacing: -0.04em;
	font-weight: 900;
}

.ndt-single-job__details-header p {
	margin: 8px 0 0;
	max-width: 720px;
	color: #667085;
	font-size: 15px;
	line-height: 1.5;
}

.ndt-single-job__detail-group {
	margin-top: 22px;
	padding-top: 20px;
	border-top: 1px solid rgba(11, 31, 61, 0.09);
}

.ndt-single-job__detail-group:first-of-type {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.ndt-single-job__detail-group h3 {
	margin: 0 0 12px;
	color: #0b1f3d;
	font-size: 18px;
	line-height: 1.2;
	letter-spacing: -0.025em;
	font-weight: 900;
}

/* This replaces the giant card grid with compact rows */
.ndt-single-job__detail-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px 18px;
}

.ndt-single-job__compact-detail {
	display: grid;
	grid-template-columns: minmax(118px, 0.42fr) minmax(0, 1fr);
	gap: 10px;
	align-items: baseline;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.ndt-single-job__compact-detail span {
	display: block;
	margin: 0;
	color: #667085;
	font-size: 11px;
	line-height: 1.25;
	font-weight: 900;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.ndt-single-job__compact-detail strong {
	display: block;
	min-width: 0;
	color: #061a35;
	font-size: 15px;
	line-height: 1.35;
	font-weight: 850;
	overflow-wrap: anywhere;
}

/* Give the top group a little more visual weight without making it huge */
.ndt-single-job__detail-group--highlights {
	margin-bottom: 2px;
}

.ndt-single-job__detail-group--highlights .ndt-single-job__detail-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 18px;
}

.ndt-single-job__detail-group--highlights .ndt-single-job__compact-detail {
	padding: 10px 12px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 14px;
	background: #f7f9fc;
}

.ndt-single-job__detail-group--highlights .ndt-single-job__compact-detail strong {
	font-size: 15.5px;
}

/* Responsive */
@media (max-width: 760px) {
	.ndt-single-job__details-card {
		padding: 22px !important;
	}

	.ndt-single-job__detail-grid,
	.ndt-single-job__detail-group--highlights .ndt-single-job__detail-grid {
		grid-template-columns: 1fr;
	}

	.ndt-single-job__compact-detail {
		grid-template-columns: 1fr;
		gap: 4px;
	}

	.ndt-single-job__detail-group--highlights .ndt-single-job__compact-detail {
		padding: 10px 12px;
	}
}

/* =========================================================
   NDT Jobs - Single Job Match Module
========================================================= */

.ndt-single-job__match-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 20px;
	align-items: center;
	padding: 24px 28px !important;
	border-color: rgba(255, 0, 109, 0.18);
	background:
		linear-gradient(135deg, #ffffff 0%, #ffffff 58%, rgba(255, 0, 109, 0.055) 100%);
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.10);
}

.ndt-single-job__match-main {
	display: grid;
	grid-template-columns: 104px minmax(0, 1fr);
	gap: 18px;
	align-items: center;
	min-width: 0;
}

.ndt-single-job__match-score,
.ndt-single-job__match-icon {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 104px;
	height: 104px;
	border: 1px solid rgba(255, 0, 109, 0.22);
	border-radius: 28px;
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.16), transparent 70%),
		#0b1f3d;
	color: #ffffff;
	box-shadow: 0 16px 34px rgba(11, 31, 61, 0.18);
}

.ndt-single-job__match-score span {
	display: block;
	font-size: 30px;
	line-height: 1;
	font-weight: 950;
	letter-spacing: -0.04em;
}

.ndt-single-job__match-score strong {
	display: block;
	margin-top: 7px;
	font-size: 11px;
	line-height: 1.1;
	font-weight: 900;
	letter-spacing: 0.07em;
	text-align: center;
	text-transform: uppercase;
}

.ndt-single-job__match-icon {
	font-size: 38px;
	font-weight: 950;
}

.ndt-single-job__match-copy {
	min-width: 0;
}

.ndt-single-job__match-copy h2 {
	margin: 0 0 6px;
	color: #0b1f3d;
	font-size: 26px;
	line-height: 1.1;
	letter-spacing: -0.04em;
	font-weight: 900;
}

.ndt-single-job__match-copy p {
	margin: 0;
	max-width: 640px;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
}

.ndt-single-job__match-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 13px 16px;
	border: 1px solid rgba(11, 31, 61, 0.14);
	border-radius: 14px;
	background: #ffffff;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.ndt-single-job__match-link:hover {
	border-color: rgba(255, 0, 109, 0.36);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

.ndt-single-job__match-card--logged-out {
	border-color: rgba(11, 31, 61, 0.12);
	background:
		linear-gradient(135deg, #ffffff 0%, #ffffff 60%, rgba(11, 31, 61, 0.045) 100%);
}

.ndt-single-job__match-card--logged-out .ndt-single-job__match-icon {
	border-color: rgba(11, 31, 61, 0.14);
	background: #0b1f3d;
}

@media (max-width: 780px) {
	.ndt-single-job__match-card {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.ndt-single-job__match-link {
		width: 100%;
	}

	.ndt-single-job__match-main {
		grid-template-columns: 86px minmax(0, 1fr);
	}

	.ndt-single-job__match-score,
	.ndt-single-job__match-icon {
		width: 86px;
		height: 86px;
		border-radius: 22px;
	}

	.ndt-single-job__match-score span {
		font-size: 26px;
	}

	.ndt-single-job__match-score strong {
		font-size: 10px;
	}
}

@media (max-width: 520px) {
	.ndt-single-job__match-main {
		grid-template-columns: 1fr;
	}

	.ndt-single-job__match-score,
	.ndt-single-job__match-icon {
		width: 100%;
		height: auto;
		min-height: 86px;
	}

	.ndt-single-job__match-copy h2 {
		font-size: 24px;
	}
}

/* =========================================================
   NDT Jobs - About Us Page
   Template: page-about-us.php
========================================================= */

body.ndt-about-page {
	background: #f7f9fc;
	color: #101828;
}

body.ndt-about-page .wp-site-blocks {
	background: #f7f9fc;
}

.ndt-about {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.11), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #f7f9fc 34rem, #f7f9fc 100%);
}

.ndt-about-container {
	width: min(1160px, 100%);
	margin: 0 auto;
	padding-left: 20px;
	padding-right: 20px;
}

.ndt-about-hero {
	padding: 64px 0 44px;
}

.ndt-about-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
	gap: 34px;
	align-items: center;
}

.ndt-about-eyebrow {
	display: inline-flex;
	margin-bottom: 12px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-about-hero h1,
.ndt-about-section h2,
.ndt-about-cta h2 {
	margin: 0;
	color: #0b1f3d;
	font-weight: 950;
	letter-spacing: -0.055em;
}

.ndt-about-hero h1 {
	max-width: 780px;
	font-size: clamp(46px, 6vw, 78px);
	line-height: 0.96;
}

.ndt-about-hero p {
	max-width: 680px;
	margin: 22px 0 0;
	color: #667085;
	font-size: 20px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-about-hero__actions,
.ndt-about-cta__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 28px;
}

.ndt-about-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 15px 20px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}

.ndt-about-button:hover {
	transform: translateY(-1px);
}

.ndt-about-button--primary {
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.22);
}

.ndt-about-button--primary:hover {
	background: #0b1f3d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(11, 31, 61, 0.18);
}

.ndt-about-button--secondary {
	border-color: rgba(11, 31, 61, 0.14);
	background: #ffffff;
	color: #0b1f3d;
}

.ndt-about-button--secondary:hover {
	border-color: rgba(255, 0, 109, 0.36);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

.ndt-about-hero__panel {
	display: grid;
	gap: 14px;
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.12);
}

.ndt-about-stat {
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 22px;
	background: linear-gradient(180deg, #f8fafc 0%, #f4f7fb 100%);
}

.ndt-about-stat strong {
	display: block;
	margin-bottom: 8px;
	color: #0b1f3d;
	font-size: 22px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-about-stat span {
	display: block;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-about-section {
	padding: 54px 0;
}

.ndt-about-section--soft {
	background: #ffffff;
}

.ndt-about-split {
	display: grid;
	grid-template-columns: minmax(260px, 0.85fr) minmax(0, 1.15fr);
	gap: 34px;
	align-items: start;
}

.ndt-about-section__intro h2,
.ndt-about-centered h2,
.ndt-about-founder h2,
.ndt-about-difference h2,
.ndt-about-cta h2 {
	font-size: clamp(34px, 4vw, 52px);
	line-height: 1;
}

.ndt-about-copy-card {
	padding: 30px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.09);
}

.ndt-about-copy-card p,
.ndt-about-founder__content p,
.ndt-about-centered p,
.ndt-about-cta p {
	margin: 0 0 18px;
	color: #344054;
	font-size: 17px;
	line-height: 1.7;
}

.ndt-about-copy-card p:last-child,
.ndt-about-founder__content p:last-child {
	margin-bottom: 0;
}

.ndt-about-centered {
	max-width: 760px;
	margin: 0 auto 30px;
	text-align: center;
}

.ndt-about-centered p {
	margin: 18px auto 0;
	color: #667085;
}

.ndt-about-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.ndt-about-card {
	padding: 26px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.08);
}

.ndt-about-card span {
	display: inline-flex;
	margin-bottom: 14px;
	padding: 8px 11px;
	border-radius: 999px;
	background: rgba(255, 0, 109, 0.10);
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.07em;
}

.ndt-about-card h3 {
	margin: 0 0 10px;
	color: #0b1f3d;
	font-size: 25px;
	line-height: 1.08;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-about-card p {
	margin: 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.6;
	font-weight: 600;
}

.ndt-about-founder {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr);
	gap: 34px;
	align-items: center;
	padding-top: 8px;
	padding-bottom: 8px;
}

.ndt-about-founder__mark {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 180px;
	height: 180px;
	border-radius: 42px;
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.28), transparent 68%),
		linear-gradient(135deg, #0b1f3d, #102c54);
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.18);
}

.ndt-about-founder__mark span {
	color: #ffffff;
	font-size: 56px;
	font-weight: 950;
	letter-spacing: -0.05em;
}

.ndt-about-founder__content {
	max-width: 780px;
}

.ndt-about-founder__content p {
	color: #344054;
}

.ndt-about-section--dark {
	margin-top: 28px;
	padding: 64px 0;
	background:
		radial-gradient(circle at top right, rgba(255, 0, 109, 0.18), transparent 30rem),
		#0b1f3d;
}

.ndt-about-difference {
	display: grid;
	grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.1fr);
	gap: 34px;
	align-items: start;
}

.ndt-about-section--dark .ndt-about-eyebrow {
	color: #ff4f9a;
}

.ndt-about-section--dark h2 {
	color: #ffffff;
}

.ndt-about-difference__list {
	display: grid;
	gap: 14px;
}

.ndt-about-difference__list div {
	padding: 20px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.07);
}

.ndt-about-difference__list strong {
	display: block;
	margin-bottom: 7px;
	color: #ffffff;
	font-size: 18px;
	font-weight: 950;
}

.ndt-about-difference__list span {
	display: block;
	color: rgba(255, 255, 255, 0.72);
	font-size: 15px;
	line-height: 1.55;
}

.ndt-about-cta {
	padding: 64px 0 76px;
}

.ndt-about-cta__box {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 28px;
	align-items: center;
}

.ndt-about-cta__box > div:first-child {
	padding: 34px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.11);
}

.ndt-about-cta p {
	margin-top: 16px;
	max-width: 700px;
	color: #667085;
}

.ndt-about-cta__actions {
	margin-top: 0;
	justify-content: flex-end;
}

@media (max-width: 980px) {
	.ndt-about-hero__grid,
	.ndt-about-split,
	.ndt-about-difference,
	.ndt-about-cta__box {
		grid-template-columns: 1fr;
	}

	.ndt-about-card-grid {
		grid-template-columns: 1fr;
	}

	.ndt-about-founder {
		grid-template-columns: 1fr;
	}

	.ndt-about-founder__mark {
		width: 140px;
		height: 140px;
		border-radius: 34px;
	}

	.ndt-about-founder__mark span {
		font-size: 46px;
	}

	.ndt-about-cta__actions {
		justify-content: flex-start;
	}
}

@media (max-width: 680px) {
	.ndt-about-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ndt-about-hero {
		padding: 44px 0 34px;
	}

	.ndt-about-hero h1 {
		font-size: 44px;
	}

	.ndt-about-hero p {
		font-size: 17px;
	}

	.ndt-about-section {
		padding: 42px 0;
	}

	.ndt-about-copy-card,
	.ndt-about-card,
	.ndt-about-cta__box > div:first-child {
		padding: 24px;
		border-radius: 24px;
	}

	.ndt-about-hero__panel {
		padding: 18px;
		border-radius: 24px;
	}

	.ndt-about-section__intro h2,
	.ndt-about-centered h2,
	.ndt-about-founder h2,
	.ndt-about-difference h2,
	.ndt-about-cta h2 {
		font-size: 34px;
	}

	.ndt-about-button {
		width: 100%;
	}

	.ndt-about-hero__actions,
	.ndt-about-cta__actions {
		display: grid;
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - About Page Mobile Fixes
   Fix tiny text + horizontal overflow
========================================================= */

@media (max-width: 780px) {
	body.ndt-about-page,
	body.ndt-about-page html {
		overflow-x: hidden;
	}

	.ndt-about,
	.ndt-about * {
		box-sizing: border-box;
	}

	.ndt-about {
		width: 100%;
		overflow-x: hidden;
	}

	.ndt-about-container {
		width: 100%;
		max-width: 100%;
		padding-left: 18px;
		padding-right: 18px;
	}

	.ndt-about-hero__grid,
	.ndt-about-split,
	.ndt-about-card-grid,
	.ndt-about-founder,
	.ndt-about-difference,
	.ndt-about-cta__box {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		width: 100%;
		max-width: 100%;
		gap: 22px;
	}

	.ndt-about-hero {
		padding: 40px 0 30px;
	}

	.ndt-about-hero h1 {
		font-size: 46px;
		line-height: 1;
		letter-spacing: -0.05em;
	}

	.ndt-about-hero p {
		font-size: 18px;
		line-height: 1.55;
	}

	.ndt-about-section__intro h2,
	.ndt-about-centered h2,
	.ndt-about-founder h2,
	.ndt-about-difference h2,
	.ndt-about-cta h2 {
		font-size: 36px;
		line-height: 1.04;
		letter-spacing: -0.045em;
	}

	.ndt-about-copy-card p,
	.ndt-about-founder__content p,
	.ndt-about-centered p,
	.ndt-about-cta p {
		font-size: 17px;
		line-height: 1.65;
	}

	.ndt-about-hero__panel,
	.ndt-about-copy-card,
	.ndt-about-card,
	.ndt-about-cta__box > div:first-child {
		width: 100%;
		max-width: 100%;
		padding: 24px;
		border-radius: 24px;
	}

	.ndt-about-stat {
		padding: 20px;
		border-radius: 20px;
	}

	.ndt-about-stat strong {
		font-size: 24px;
		line-height: 1.1;
	}

	.ndt-about-stat span,
	.ndt-about-card p,
	.ndt-about-difference__list span {
		font-size: 16px;
		line-height: 1.6;
	}

	.ndt-about-card h3 {
		font-size: 27px;
		line-height: 1.08;
	}

	.ndt-about-founder__mark {
		width: 118px;
		height: 118px;
		border-radius: 28px;
	}

	.ndt-about-founder__mark span {
		font-size: 40px;
	}

	.ndt-about-section--dark {
		width: 100%;
		margin-top: 16px;
		padding: 46px 0;
		overflow: hidden;
	}

	.ndt-about-difference__list {
		width: 100%;
		max-width: 100%;
	}

	.ndt-about-difference__list div {
		width: 100%;
		max-width: 100%;
		padding: 20px;
		border-radius: 20px;
	}

	.ndt-about-difference__list strong {
		font-size: 19px;
		line-height: 1.25;
	}

	.ndt-about-cta {
		padding: 46px 0 58px;
	}

	.ndt-about-cta__actions,
	.ndt-about-hero__actions {
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
		gap: 12px;
	}

	.ndt-about-button {
		width: 100%;
		min-height: 54px;
		font-size: 16px;
		border-radius: 16px;
	}
}

@media (max-width: 430px) {
	.ndt-about-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ndt-about-hero h1 {
		font-size: 41px;
	}

	.ndt-about-section__intro h2,
	.ndt-about-centered h2,
	.ndt-about-founder h2,
	.ndt-about-difference h2,
	.ndt-about-cta h2 {
		font-size: 32px;
	}

	.ndt-about-hero p,
	.ndt-about-copy-card p,
	.ndt-about-founder__content p,
	.ndt-about-centered p,
	.ndt-about-cta p {
		font-size: 16.5px;
	}

	.ndt-about-card h3 {
		font-size: 24px;
	}

	.ndt-about-stat strong {
		font-size: 22px;
	}
}

/* =========================================================
   NDT Jobs - Contact Us Page
   Template: page-contact-us.php
========================================================= */

body.ndt-contact-page {
	background: #f7f9fc;
	color: #101828;
}

body.ndt-contact-page .wp-site-blocks {
	background: #f7f9fc;
}

.ndt-contact {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.11), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #f7f9fc 34rem, #f7f9fc 100%);
}

.ndt-contact-container {
	width: min(1160px, 100%);
	margin: 0 auto;
	padding-left: 20px;
	padding-right: 20px;
}

.ndt-contact-hero {
	padding: 64px 0 44px;
}

.ndt-contact-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
	gap: 34px;
	align-items: center;
}

.ndt-contact-eyebrow {
	display: inline-flex;
	margin-bottom: 12px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-contact-hero h1,
.ndt-contact-section h2,
.ndt-contact-cta h2 {
	margin: 0;
	color: #0b1f3d;
	font-weight: 950;
	letter-spacing: -0.055em;
}

.ndt-contact-hero h1 {
	max-width: 780px;
	font-size: clamp(46px, 6vw, 78px);
	line-height: 0.96;
}

.ndt-contact-hero p {
	max-width: 680px;
	margin: 22px 0 0;
	color: #667085;
	font-size: 20px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-contact-hero__actions,
.ndt-contact-cta__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 28px;
}

.ndt-contact-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 15px 20px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}

.ndt-contact-button:hover {
	transform: translateY(-1px);
}

.ndt-contact-button--primary {
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.22);
}

.ndt-contact-button--primary:hover {
	background: #0b1f3d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(11, 31, 61, 0.18);
}

.ndt-contact-button--secondary {
	border-color: rgba(11, 31, 61, 0.14);
	background: #ffffff;
	color: #0b1f3d;
}

.ndt-contact-button--secondary:hover {
	border-color: rgba(255, 0, 109, 0.36);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

.ndt-contact-hero__panel {
	display: grid;
	gap: 14px;
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.12);
}

.ndt-contact-panel-item {
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 22px;
	background: linear-gradient(180deg, #f8fafc 0%, #f4f7fb 100%);
}

.ndt-contact-panel-item strong {
	display: block;
	margin-bottom: 8px;
	color: #0b1f3d;
	font-size: 22px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-contact-panel-item span {
	display: block;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-contact-section {
	padding: 54px 0;
}

.ndt-contact-centered {
	max-width: 760px;
	margin: 0 auto 30px;
	text-align: center;
}

.ndt-contact-centered h2,
.ndt-contact-form-card h2,
.ndt-contact-cta h2 {
	font-size: clamp(34px, 4vw, 52px);
	line-height: 1;
}

.ndt-contact-centered p {
	margin: 18px auto 0;
	color: #667085;
	font-size: 17px;
	line-height: 1.65;
}

.ndt-contact-card-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.ndt-contact-card {
	display: flex;
	flex-direction: column;
	min-height: 280px;
	padding: 26px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.08);
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.ndt-contact-card:hover {
	transform: translateY(-3px);
	border-color: rgba(255, 0, 109, 0.26);
	box-shadow: 0 24px 64px rgba(11, 31, 61, 0.12);
}

.ndt-contact-card span {
	display: inline-flex;
	width: fit-content;
	margin-bottom: 14px;
	padding: 8px 11px;
	border-radius: 999px;
	background: rgba(255, 0, 109, 0.10);
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.07em;
}

.ndt-contact-card h3 {
	margin: 0 0 10px;
	color: #0b1f3d;
	font-size: 25px;
	line-height: 1.08;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-contact-card p {
	margin: 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.6;
	font-weight: 600;
}

.ndt-contact-card strong {
	display: inline-flex;
	margin-top: auto;
	padding-top: 20px;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
}

.ndt-contact-section--form {
	background: #ffffff;
}

.ndt-contact-form-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 28px;
	align-items: start;
}

.ndt-contact-form-card {
	padding: 34px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.11);
}

.ndt-contact-form-placeholder {
	margin-top: 28px;
	padding: 28px;
	border: 1px dashed rgba(11, 31, 61, 0.20);
	border-radius: 26px;
	background: #f7f9fc;
}

.ndt-contact-form-placeholder h3 {
	margin: 0 0 8px;
	color: #0b1f3d;
	font-size: 24px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-contact-form-placeholder p {
	margin: 0;
	color: #667085;
	font-size: 16px;
	line-height: 1.6;
}

.ndt-contact-placeholder-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-top: 22px;
}

.ndt-contact-placeholder-fields div {
	display: flex;
	align-items: center;
	min-height: 54px;
	padding: 0 16px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 16px;
	background: #ffffff;
	color: #667085;
	font-size: 14px;
	font-weight: 800;
}

.ndt-contact-placeholder-fields div:last-child {
	grid-column: 1 / -1;
	min-height: 130px;
	align-items: flex-start;
	padding-top: 16px;
}

.ndt-contact-sidebar {
	display: grid;
	gap: 16px;
	position: sticky;
	top: 96px;
}

.ndt-contact-side-card {
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 26px;
	background: #ffffff;
	box-shadow: 0 18px 48px rgba(11, 31, 61, 0.08);
}

.ndt-contact-side-card span {
	display: inline-flex;
	margin-bottom: 10px;
	color: #ff006d;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-contact-side-card h3 {
	margin: 0 0 8px;
	color: #0b1f3d;
	font-size: 24px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-contact-side-card p {
	margin: 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-contact-side-card a {
	display: inline-flex;
	margin-top: 16px;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	text-decoration: none;
}

.ndt-contact-side-card a:hover {
	color: #ff006d;
}

.ndt-contact-cta {
	padding: 64px 0 76px;
}

.ndt-contact-cta__box {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 28px;
	align-items: center;
}

.ndt-contact-cta__box > div:first-child {
	padding: 34px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.11);
}

.ndt-contact-cta p {
	margin: 16px 0 0;
	max-width: 700px;
	color: #667085;
	font-size: 17px;
	line-height: 1.65;
}

.ndt-contact-cta__actions {
	margin-top: 0;
	justify-content: flex-end;
}

@media (max-width: 1100px) {
	.ndt-contact-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ndt-contact-form-grid {
		grid-template-columns: 1fr;
	}

	.ndt-contact-sidebar {
		position: static;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 980px) {
	.ndt-contact-hero__grid,
	.ndt-contact-cta__box {
		grid-template-columns: 1fr;
	}

	.ndt-contact-cta__actions {
		justify-content: flex-start;
	}
}

@media (max-width: 680px) {
	.ndt-contact-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ndt-contact-hero {
		padding: 44px 0 34px;
	}

	.ndt-contact-hero h1 {
		font-size: 44px;
	}

	.ndt-contact-hero p {
		font-size: 17px;
	}

	.ndt-contact-section {
		padding: 42px 0;
	}

	.ndt-contact-card-grid,
	.ndt-contact-sidebar,
	.ndt-contact-placeholder-fields {
		grid-template-columns: 1fr;
	}

	.ndt-contact-form-card,
	.ndt-contact-card,
	.ndt-contact-cta__box > div:first-child {
		padding: 24px;
		border-radius: 24px;
	}

	.ndt-contact-hero__panel {
		padding: 18px;
		border-radius: 24px;
	}

	.ndt-contact-centered h2,
	.ndt-contact-form-card h2,
	.ndt-contact-cta h2 {
		font-size: 34px;
	}

	.ndt-contact-placeholder-fields div:last-child {
		grid-column: auto;
	}

	.ndt-contact-button {
		width: 100%;
	}

	.ndt-contact-hero__actions,
	.ndt-contact-cta__actions {
		display: grid;
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Academic Affiliates Page
   Template: page-academic-affiliates.php
========================================================= */

body.ndt-academic-page {
	background: #f7f9fc;
	color: #101828;
}

body.ndt-academic-page .wp-site-blocks {
	background: #f7f9fc;
}

.ndt-academic {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.11), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #f7f9fc 34rem, #f7f9fc 100%);
}

.ndt-academic-container {
	width: min(1160px, 100%);
	margin: 0 auto;
	padding-left: 20px;
	padding-right: 20px;
}

.ndt-academic-hero {
	padding: 64px 0 48px;
}

.ndt-academic-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(320px, 0.88fr);
	gap: 34px;
	align-items: center;
}

.ndt-academic-eyebrow {
	display: inline-flex;
	margin-bottom: 12px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-academic-hero h1,
.ndt-academic-section h2,
.ndt-academic-cta h2 {
	margin: 0;
	color: #0b1f3d;
	font-weight: 950;
	letter-spacing: -0.055em;
}

.ndt-academic-hero h1 {
	max-width: 840px;
	font-size: clamp(46px, 6vw, 78px);
	line-height: 0.96;
}

.ndt-academic-hero p {
	max-width: 700px;
	margin: 22px 0 0;
	color: #667085;
	font-size: 20px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-academic-hero__actions,
.ndt-academic-cta__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 28px;
}

.ndt-academic-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 15px 20px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}

.ndt-academic-button:hover {
	transform: translateY(-1px);
}

.ndt-academic-button--primary {
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.22);
}

.ndt-academic-button--primary:hover {
	background: #0b1f3d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(11, 31, 61, 0.18);
}

.ndt-academic-button--secondary {
	border-color: rgba(11, 31, 61, 0.14);
	background: #ffffff;
	color: #0b1f3d;
}

.ndt-academic-button--secondary:hover {
	border-color: rgba(255, 0, 109, 0.36);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

.ndt-academic-hero__panel {
	display: grid;
	gap: 14px;
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.12);
}

.ndt-academic-signal {
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 22px;
	background: linear-gradient(180deg, #f8fafc 0%, #f4f7fb 100%);
}

.ndt-academic-signal strong {
	display: block;
	margin-bottom: 8px;
	color: #0b1f3d;
	font-size: 22px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-academic-signal span {
	display: block;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-academic-section {
	padding: 58px 0;
}

.ndt-academic-section-heading {
	max-width: 760px;
	margin-bottom: 30px;
}

.ndt-academic-section-heading--center {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.ndt-academic-section-heading h2 {
	font-size: clamp(34px, 4vw, 54px);
	line-height: 1;
}

.ndt-academic-section-heading p {
	margin: 16px 0 0;
	color: #667085;
	font-size: 17px;
	line-height: 1.65;
	font-weight: 600;
}

/* =========================================================
   Academic Affiliates - Featured Affiliates + Directory
   Clean NDT Jobs design direction
========================================================= */

/* Featured affiliate section should match the new site, not the old dark index style */
.ndt-academic-section--dark {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.08), transparent 34rem),
		#f7f9fc;
}

.ndt-academic-section--dark .ndt-academic-eyebrow {
	color: #ff006d;
}

.ndt-academic-section--dark h2 {
	color: #0b1f3d;
}

.ndt-academic-section--dark .ndt-academic-section-heading p {
	color: #667085;
}

/* Featured affiliate cards */
.ndt-academic-featured-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.ndt-academic-featured-card {
	display: flex;
	flex-direction: column;
	min-height: 520px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
	overflow: hidden;
	position: relative;
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.ndt-academic-featured-card:hover {
	transform: translateY(-3px);
	border-color: rgba(255, 0, 109, 0.24);
	box-shadow: 0 28px 76px rgba(11, 31, 61, 0.14);
}

.ndt-academic-featured-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 28px;
	right: 28px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-academic-featured-card:nth-child(2)::before {
	background: #ff006d;
}

/* Logo area */
.ndt-academic-featured-card__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 142px;
	padding: 34px 28px 24px;
	background:
		linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-academic-featured-card__logo span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 116px;
	height: 76px;
	padding: 14px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 22px;
	background: #ffffff;
	color: #0b1f3d;
	font-size: 22px;
	font-weight: 950;
	line-height: 1.05;
	text-align: center;
	letter-spacing: -0.04em;
	box-shadow: 0 16px 38px rgba(11, 31, 61, 0.08);
}

.ndt-academic-featured-card__body {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 26px;
}

/* Partner badge/chips */
.ndt-academic-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 20px;
}

.ndt-academic-badges span {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 8px 10px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-academic-badges span:first-child {
	border-color: rgba(255, 0, 109, 0.18);
	background: rgba(255, 0, 109, 0.09);
	color: #ff006d;
}

.ndt-academic-featured-card h3 {
	margin: 0 0 10px;
	color: #0b1f3d;
	font-size: 25px;
	line-height: 1.08;
	font-weight: 950;
	letter-spacing: -0.04em;
}

.ndt-academic-featured-card strong {
	display: inline-flex;
	width: fit-content;
	margin-bottom: 18px;
	color: #ff006d;
	font-size: 13px;
	font-weight: 950;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.ndt-academic-featured-card p {
	margin: 0;
	color: #667085;
	font-size: 15.5px;
	line-height: 1.65;
	font-weight: 600;
}

.ndt-academic-featured-card__link {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 62px;
	margin-top: auto;
	border-top: 1px solid rgba(11, 31, 61, 0.10);
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 15px;
	font-weight: 950;
	text-decoration: none;
}

.ndt-academic-featured-card__link:hover {
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

/* Process section remains clean */
.ndt-academic-process {
	display: grid;
	grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.1fr);
	gap: 34px;
	align-items: start;
}

.ndt-academic-process-grid {
	display: grid;
	gap: 16px;
}

.ndt-academic-process-card {
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 26px;
	background: #ffffff;
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.08);
}

.ndt-academic-process-card span {
	display: inline-flex;
	margin-bottom: 12px;
	color: #ff006d;
	font-size: 13px;
	font-weight: 950;
	letter-spacing: 0.08em;
}

.ndt-academic-process-card h3 {
	margin: 0 0 8px;
	color: #0b1f3d;
	font-size: 24px;
	line-height: 1.1;
	font-weight: 950;
	letter-spacing: -0.035em;
}

.ndt-academic-process-card p {
	margin: 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.6;
	font-weight: 600;
}

/* Directory section */
.ndt-academic-index-section {
	background:
		linear-gradient(180deg, #ffffff 0%, #f7f9fc 100%);
}

.ndt-academic-index-section .ndt-academic-section-heading {
	padding-left: 0;
	border-left: 0;
	max-width: 820px;
}

.ndt-academic-index-section h2 {
	color: #0b1f3d;
}

.ndt-academic-index-section .ndt-academic-section-heading p {
	color: #667085;
}

/* Directory cards */
.ndt-academic-index-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.ndt-academic-index-card {
	min-height: 162px;
	padding: 22px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 24px;
	background: #ffffff;
	color: #101828;
	box-shadow: 0 18px 48px rgba(11, 31, 61, 0.08);
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.ndt-academic-index-card:hover {
	transform: translateY(-2px);
	border-color: rgba(255, 0, 109, 0.22);
	box-shadow: 0 22px 56px rgba(11, 31, 61, 0.11);
}

.ndt-academic-index-card__label {
	display: inline-flex;
	width: fit-content;
	margin-bottom: 18px;
	padding: 7px 10px;
	border-radius: 999px;
	background: rgba(11, 31, 61, 0.06);
	color: #667085;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.ndt-academic-index-card h3 {
	margin: 0 0 14px;
	color: #0b1f3d;
	font-size: 20px;
	line-height: 1.12;
	font-weight: 950;
	letter-spacing: -0.03em;
}

.ndt-academic-index-card p {
	margin: 0;
	color: #ff006d;
	font-size: 13px;
	font-weight: 950;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.ndt-academic-cta {
	padding: 64px 0 76px;
	background: #f7f9fc;
}

.ndt-academic-cta__box {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 28px;
	align-items: center;
}

.ndt-academic-cta__box > div:first-child {
	padding: 34px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.11);
}

.ndt-academic-cta p {
	margin: 16px 0 0;
	max-width: 740px;
	color: #667085;
	font-size: 17px;
	line-height: 1.65;
	font-weight: 600;
}

.ndt-academic-cta__actions {
	margin-top: 0;
	justify-content: flex-end;
}

@media (max-width: 1100px) {
	.ndt-academic-index-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 980px) {
	.ndt-academic-hero__grid,
	.ndt-academic-process,
	.ndt-academic-cta__box {
		grid-template-columns: 1fr;
	}

	.ndt-academic-featured-grid {
		grid-template-columns: 1fr;
	}

	.ndt-academic-index-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ndt-academic-cta__actions {
		justify-content: flex-start;
	}
}

@media (max-width: 680px) {
	.ndt-academic-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ndt-academic-hero {
		padding: 44px 0 34px;
	}

	.ndt-academic-hero h1 {
		font-size: 44px;
	}

	.ndt-academic-hero p {
		font-size: 17px;
	}

	.ndt-academic-section {
		padding: 42px 0;
	}

	.ndt-academic-index-grid {
		grid-template-columns: 1fr;
	}

	.ndt-academic-hero__panel,
	.ndt-academic-cta__box > div:first-child {
		padding: 24px;
		border-radius: 24px;
	}

	.ndt-academic-section-heading h2,
	.ndt-academic-cta h2 {
		font-size: 34px;
	}

	.ndt-academic-button {
		width: 100%;
	}

	.ndt-academic-hero__actions,
	.ndt-academic-cta__actions {
		display: grid;
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Login Page
   Template: page-login.php
========================================================= */

body.ndt-login-page {
	background: #f7f9fc;
	color: #101828;
}

body.ndt-login-page .wp-site-blocks {
	background: #f7f9fc;
}

.ndt-login {
	min-height: 720px;
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.12), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #f7f9fc 34rem, #f7f9fc 100%);
}

.ndt-login-container {
	width: min(1160px, 100%);
	margin: 0 auto;
	padding-left: 20px;
	padding-right: 20px;
}

.ndt-login-hero {
	padding: 64px 0 76px;
}

.ndt-login-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 470px;
	gap: 42px;
	align-items: center;
}

.ndt-login-eyebrow {
	display: inline-flex;
	margin-bottom: 12px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-login-copy h1 {
	max-width: 720px;
	margin: 0;
	color: #0b1f3d;
	font-size: clamp(48px, 6vw, 78px);
	line-height: 0.96;
	letter-spacing: -0.055em;
	font-weight: 950;
}

.ndt-login-copy p {
	max-width: 640px;
	margin: 22px 0 0;
	color: #667085;
	font-size: 20px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-login-benefits {
	display: grid;
	gap: 14px;
	max-width: 640px;
	margin-top: 30px;
}

.ndt-login-benefits div {
	padding: 22px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.86);
	box-shadow: 0 18px 48px rgba(11, 31, 61, 0.08);
}

.ndt-login-benefits strong {
	display: block;
	margin-bottom: 7px;
	color: #0b1f3d;
	font-size: 21px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-login-benefits span {
	display: block;
	color: #667085;
	font-size: 15px;
	line-height: 1.6;
	font-weight: 600;
}

.ndt-login-panel {
	display: grid;
	gap: 18px;
}

.ndt-login-form-card,
.ndt-login-register-card {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.12);
	overflow: hidden;
}

.ndt-login-form-card {
	padding: 32px;
	position: relative;
}

.ndt-login-form-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 32px;
	right: 32px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-login-form-heading {
	margin-bottom: 22px;
}

.ndt-login-form-heading h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: 32px;
	line-height: 1.05;
	letter-spacing: -0.045em;
	font-weight: 950;
}

/* Hide duplicate page/plugin title if PMPro outputs one */
.ndt-login-form-wrap > h1:first-child,
.ndt-login-form-wrap > h2:first-child,
.ndt-login-form-wrap .pmpro_form_heading,
.ndt-login-form-wrap .pmpro_card_title {
	display: none;
}

/* PMPro form cleanup */
.ndt-login-form-wrap,
.ndt-login-form-wrap form {
	margin: 0;
}

.ndt-login-form-wrap form {
	display: grid;
	gap: 18px;
}

.ndt-login-form-wrap label {
	display: block;
	margin-bottom: 8px;
	color: #0b1f3d;
	font-size: 15px;
	font-weight: 900;
}

.ndt-login-form-wrap input[type="text"],
.ndt-login-form-wrap input[type="email"],
.ndt-login-form-wrap input[type="password"] {
	width: 100%;
	min-height: 54px;
	padding: 0 16px;
	border: 1px solid rgba(11, 31, 61, 0.18);
	border-radius: 14px;
	background: #ffffff;
	color: #101828;
	font-size: 16px;
	outline: none;
	box-shadow: none;
}

.ndt-login-form-wrap input[type="text"]:focus,
.ndt-login-form-wrap input[type="email"]:focus,
.ndt-login-form-wrap input[type="password"]:focus {
	border-color: rgba(255, 0, 109, 0.55);
	box-shadow: 0 0 0 4px rgba(255, 0, 109, 0.10);
}

.ndt-login-form-wrap input[type="checkbox"] {
	width: 16px;
	height: 16px;
	margin-right: 8px;
	accent-color: #ff006d;
}

.ndt-login-form-wrap input[type="submit"],
.ndt-login-form-wrap button[type="submit"],
.ndt-login-form-wrap .pmpro_btn,
.ndt-login-form-wrap .pmpro_btn-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 56px;
	padding: 15px 20px;
	border: 0;
	border-radius: 16px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 16px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 16px 34px rgba(11, 31, 61, 0.16);
}

.ndt-login-form-wrap input[type="submit"]:hover,
.ndt-login-form-wrap button[type="submit"]:hover,
.ndt-login-form-wrap .pmpro_btn:hover,
.ndt-login-form-wrap .pmpro_btn-submit:hover {
	background: #ff006d;
	color: #ffffff;
}

/* Lost password / helper links */
.ndt-login-form-wrap a {
	color: #0b1f3d;
	font-weight: 800;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.ndt-login-form-wrap a:hover {
	color: #ff006d;
}

/* PMPro messages */
.ndt-login-form-wrap .pmpro_message,
.ndt-login-form-wrap .pmpro_success,
.ndt-login-form-wrap .pmpro_error,
.ndt-login-form-wrap .login .message {
	margin: 0 0 18px;
	padding: 15px 16px;
	border-radius: 16px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.45;
}

.ndt-login-form-wrap .pmpro_success,
.ndt-login-form-wrap .login .message {
	border: 1px solid rgba(18, 183, 106, 0.25);
	background: rgba(236, 253, 243, 0.95);
	color: #027a48;
}

.ndt-login-form-wrap .pmpro_error {
	border: 1px solid rgba(180, 35, 24, 0.22);
	background: rgba(254, 243, 242, 0.96);
	color: #b42318;
}

/* Show password button cleanup */
.ndt-login-form-wrap button.wp-hide-pw,
.ndt-login-form-wrap .button.wp-hide-pw {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 6px 12px;
	border: 0;
	border-radius: 999px;
	background: #ff006d;
	color: #ffffff;
	font-size: 13px;
	font-weight: 900;
	box-shadow: none;
}

.ndt-login-form-wrap button.wp-hide-pw:hover,
.ndt-login-form-wrap .button.wp-hide-pw:hover {
	background: #0b1f3d;
	color: #ffffff;
}

/* Bottom account card */
.ndt-login-register-card {
	padding: 26px;
	text-align: center;
}

.ndt-login-register-card span {
	display: inline-flex;
	margin-bottom: 8px;
	color: #667085;
	font-size: 14px;
	font-weight: 700;
}

.ndt-login-register-card h3 {
	max-width: 320px;
	margin: 0 auto;
	color: #0b1f3d;
	font-size: 24px;
	line-height: 1.12;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-login-register-actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	margin-top: 20px;
}

.ndt-login-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 15px 20px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}

.ndt-login-button:hover {
	transform: translateY(-1px);
}

.ndt-login-button--primary {
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.22);
}

.ndt-login-button--primary:hover {
	background: #0b1f3d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(11, 31, 61, 0.18);
}

.ndt-login-button--secondary {
	border-color: rgba(11, 31, 61, 0.14);
	background: #f7f9fc;
	color: #0b1f3d;
}

.ndt-login-button--secondary:hover {
	border-color: rgba(255, 0, 109, 0.36);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

@media (max-width: 980px) {
	.ndt-login-grid {
		grid-template-columns: 1fr;
	}

	.ndt-login-copy {
		text-align: left;
	}
}

@media (max-width: 680px) {
	.ndt-login-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ndt-login-hero {
		padding: 42px 0 56px;
	}

	.ndt-login-copy h1 {
		font-size: 44px;
	}

	.ndt-login-copy p {
		font-size: 17px;
	}

	.ndt-login-form-card,
	.ndt-login-register-card {
		border-radius: 24px;
	}

	.ndt-login-form-card {
		padding: 26px 22px;
	}

	.ndt-login-form-card::before {
		left: 22px;
		right: 22px;
	}

	.ndt-login-form-heading h2 {
		font-size: 28px;
	}
}

/* =========================================================
   NDT Jobs - Login Page Cleanup
   Remove duplicate-card spacing and tighten PMPro login panel
========================================================= */

.ndt-login-panel {
	align-self: center;
}

.ndt-login-form-card {
	max-width: 520px;
	width: 100%;
	margin-left: auto;
}

/* PMPro built-in need account box */
.ndt-login-form-wrap .pmpro_actions_nav,
.ndt-login-form-wrap .pmpro_login_wrap + div,
.ndt-login-form-wrap .pmpro_member_profile_edit_wrap + div {
	margin-top: 24px;
}

/* Make the existing Choose Account Type card fit better if it comes from page content/plugin output */
.ndt-login-form-wrap .pmpro_actions_nav,
.ndt-login-form-wrap .ndt-account-choice,
.ndt-login-form-wrap .pmpro_card {
	border-radius: 22px;
}

/* Keep lost password area controlled */
.ndt-login-form-wrap .login-submit {
	margin-top: 18px;
}

.ndt-login-form-wrap .login-remember {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 4px 0 0;
}

.ndt-login-form-wrap .login-remember label {
	margin: 0;
}

/* =========================================================
   NDT Jobs - Join / Account Type Page
   Template: page-join.php
========================================================= */

body.ndt-join-page {
	background: #f7f9fc;
	color: #101828;
}

body.ndt-join-page .wp-site-blocks {
	background: #f7f9fc;
}

.ndt-join {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.11), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #f7f9fc 34rem, #f7f9fc 100%);
}

.ndt-join-container {
	width: min(1080px, 100%);
	margin: 0 auto;
	padding-left: 20px;
	padding-right: 20px;
}

.ndt-join-hero {
	padding: 64px 0 52px;
}

.ndt-join-hero__content {
	max-width: 880px;
	margin: 0 auto 34px;
	text-align: center;
}

.ndt-join-eyebrow,
.ndt-join-card__label {
	display: inline-flex;
	margin-bottom: 12px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-join-hero h1 {
	margin: 0;
	color: #0b1f3d;
	font-size: clamp(46px, 6vw, 76px);
	line-height: 0.96;
	letter-spacing: -0.055em;
	font-weight: 950;
}

.ndt-join-hero p {
	max-width: 780px;
	margin: 22px auto 0;
	color: #667085;
	font-size: 20px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-join-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
}

.ndt-join-card {
	display: flex;
	flex-direction: column;
	min-height: 500px;
	padding: 32px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
	position: relative;
	overflow: hidden;
}

.ndt-join-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 32px;
	right: 32px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-join-card--employer {
	border-color: rgba(255, 0, 109, 0.22);
	box-shadow:
		0 24px 70px rgba(11, 31, 61, 0.10),
		0 0 0 5px rgba(255, 0, 109, 0.035);
}

.ndt-join-card h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: 36px;
	line-height: 1.02;
	letter-spacing: -0.05em;
	font-weight: 950;
}

.ndt-join-card p {
	margin: 16px 0 0;
	color: #667085;
	font-size: 17px;
	line-height: 1.6;
	font-weight: 600;
}

.ndt-join-list {
	display: grid;
	gap: 12px;
	margin: 26px 0 30px;
	padding: 0;
	list-style: none;
}

.ndt-join-list li {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	gap: 10px;
	align-items: start;
	color: #344054;
	font-size: 16px;
	line-height: 1.45;
	font-weight: 700;
}

.ndt-join-list li::before {
	content: "✓";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 999px;
	background: #ff006d;
	color: #ffffff;
	font-size: 14px;
	font-weight: 950;
	line-height: 1;
}

.ndt-join-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	min-height: 54px;
	margin-top: auto;
	padding: 16px 22px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.ndt-join-button:hover {
	transform: translateY(-1px);
}

.ndt-join-button--primary {
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.22);
}

.ndt-join-button--primary:hover {
	background: #0b1f3d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(11, 31, 61, 0.18);
}

.ndt-join-login-note {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 5px;
	margin-top: 28px;
	color: #667085;
	font-size: 16px;
	font-weight: 600;
}

.ndt-join-login-note a {
	color: #ff006d;
	font-weight: 900;
	text-decoration: none;
}

.ndt-join-login-note a:hover {
	color: #0b1f3d;
}

.ndt-join-help {
	padding: 56px 0 76px;
	background: #ffffff;
}

.ndt-join-help__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 420px;
	gap: 28px;
	align-items: start;
}

.ndt-join-help__content {
	padding: 34px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-join-help__content h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: clamp(34px, 4vw, 52px);
	line-height: 1;
	letter-spacing: -0.055em;
	font-weight: 950;
}

.ndt-join-help__content p {
	margin: 18px 0 0;
	color: #667085;
	font-size: 17px;
	line-height: 1.65;
	font-weight: 600;
}

.ndt-join-help__cards {
	display: grid;
	gap: 16px;
}

.ndt-join-help__cards a {
	display: block;
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 26px;
	background: #f7f9fc;
	box-shadow: 0 18px 48px rgba(11, 31, 61, 0.08);
	text-decoration: none;
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.ndt-join-help__cards a:hover {
	transform: translateY(-2px);
	border-color: rgba(255, 0, 109, 0.24);
	box-shadow: 0 22px 56px rgba(11, 31, 61, 0.11);
}

.ndt-join-help__cards strong {
	display: block;
	margin-bottom: 8px;
	color: #0b1f3d;
	font-size: 22px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-join-help__cards span {
	display: block;
	color: #667085;
	font-size: 15px;
	line-height: 1.6;
	font-weight: 600;
}

@media (max-width: 900px) {
	.ndt-join-grid,
	.ndt-join-help__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.ndt-join-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ndt-join-hero {
		padding: 44px 0 42px;
	}

	.ndt-join-hero__content {
		text-align: left;
	}

	.ndt-join-hero h1 {
		font-size: 44px;
	}

	.ndt-join-hero p {
		font-size: 17px;
	}

	.ndt-join-card,
	.ndt-join-help__content {
		padding: 24px;
		border-radius: 24px;
	}

	.ndt-join-card::before {
		left: 24px;
		right: 24px;
	}

	.ndt-join-card h2 {
		font-size: 31px;
	}

	.ndt-join-button {
		width: 100%;
	}

	.ndt-join-login-note {
		flex-wrap: wrap;
		text-align: center;
	}

	.ndt-join-help {
		padding: 42px 0 58px;
	}

	.ndt-join-help__content h2 {
		font-size: 34px;
	}
}

/* =========================================================
   NDT Jobs - PMPro Checkout / Registration Page
   Template: page-membership-checkout.php
========================================================= */

body.ndt-checkout-page {
	background: #f7f9fc;
	color: #101828;
}

body.ndt-checkout-page .wp-site-blocks {
	background: #f7f9fc;
}

.ndt-checkout {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.11), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #f7f9fc 34rem, #f7f9fc 100%);
}

.ndt-checkout-container {
	width: min(1160px, 100%);
	margin: 0 auto;
	padding-left: 20px;
	padding-right: 20px;
}

.ndt-checkout-hero {
	padding: 46px 0 76px;
}

.ndt-checkout-heading {
	max-width: 820px;
	margin-bottom: 34px;
}

.ndt-checkout-back {
	display: inline-flex;
	align-items: center;
	margin-bottom: 22px;
	padding: 10px 14px;
	border: 1px solid rgba(11, 31, 61, 0.14);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.82);
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	text-decoration: none;
	box-shadow: 0 12px 34px rgba(11, 31, 61, 0.08);
}

.ndt-checkout-back:hover {
	border-color: rgba(255, 0, 109, 0.35);
	color: #ff006d;
}

.ndt-checkout-eyebrow {
	display: inline-flex;
	margin-bottom: 12px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-checkout-heading h1 {
	margin: 0;
	color: #0b1f3d;
	font-size: clamp(46px, 5.5vw, 72px);
	line-height: 0.98;
	letter-spacing: -0.055em;
	font-weight: 950;
}

.ndt-checkout-heading p {
	max-width: 760px;
	margin: 18px 0 0;
	color: #667085;
	font-size: 20px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-checkout-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 28px;
	align-items: start;
}

.ndt-checkout-main {
	display: grid;
	gap: 22px;
}

.ndt-checkout-info-card,
.ndt-checkout-form-card,
.ndt-checkout-side-card {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-checkout-info-card {
	padding: 30px;
}

.ndt-checkout-info-card h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: 34px;
	line-height: 1.04;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-checkout-info-card p {
	margin: 16px 0 0;
	color: #667085;
	font-size: 18px;
	line-height: 1.6;
	font-weight: 600;
}

.ndt-checkout-form-card {
	padding: 34px;
	position: relative;
	overflow: hidden;
}

.ndt-checkout-form-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 34px;
	right: 34px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

/* PMPro checkout content reset */
.ndt-checkout-form-card #pmpro_form,
.ndt-checkout-form-card form,
.ndt-checkout-form-card .pmpro_form {
	margin: 0;
}

.ndt-checkout-form-card #pmpro_form {
	position: relative;
	z-index: 1;
}

/* Hide duplicate PMPro headings that make the page feel repetitive */
.ndt-checkout-form-card > h1:first-child,
.ndt-checkout-form-card > h2:first-child,
.ndt-checkout-form-card .pmpro_checkout-h2-name,
.ndt-checkout-form-card .pmpro_checkout h2 span.pmpro_checkout-h2-name {
	color: #0b1f3d;
	font-size: 26px;
	font-weight: 950;
	letter-spacing: -0.035em;
}

/* PMPro sections/cards */
.ndt-checkout-form-card .pmpro_checkout,
.ndt-checkout-form-card .pmpro_card {
	margin: 0 0 24px;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.ndt-checkout-form-card .pmpro_checkout:last-child,
.ndt-checkout-form-card .pmpro_card:last-child {
	margin-bottom: 0;
}

/* Labels */
.ndt-checkout-form-card label {
	display: block;
	margin-bottom: 8px;
	color: #0b1f3d;
	font-size: 15px;
	font-weight: 900;
}

/* Inputs */
.ndt-checkout-form-card input[type="text"],
.ndt-checkout-form-card input[type="email"],
.ndt-checkout-form-card input[type="password"],
.ndt-checkout-form-card input[type="tel"],
.ndt-checkout-form-card select,
.ndt-checkout-form-card textarea {
	width: 100%;
	min-height: 54px;
	padding: 0 16px;
	border: 1px solid rgba(11, 31, 61, 0.18);
	border-radius: 14px;
	background: #ffffff;
	color: #101828;
	font-size: 16px;
	outline: none;
	box-shadow: none;
}

.ndt-checkout-form-card input:focus,
.ndt-checkout-form-card select:focus,
.ndt-checkout-form-card textarea:focus {
	border-color: rgba(255, 0, 109, 0.55);
	box-shadow: 0 0 0 4px rgba(255, 0, 109, 0.10);
}

/* PMPro account fields grid */
.ndt-checkout-form-card .pmpro_checkout-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.ndt-checkout-form-card .pmpro_checkout-field,
.ndt-checkout-form-card .pmpro_form_field {
	margin: 0;
}

.ndt-checkout-form-card .pmpro_checkout-field-username,
.ndt-checkout-form-card .pmpro_checkout-field-bemail,
.ndt-checkout-form-card .pmpro_checkout-field-bconfirmemail {
	grid-column: 1 / -1;
}

/* The password fields are often awkward because of the show password button */
.ndt-checkout-form-card .pmpro_checkout-field-password,
.ndt-checkout-form-card .pmpro_checkout-field-password2 {
	min-width: 0;
}

/* Show password button */
.ndt-checkout-form-card button.wp-hide-pw,
.ndt-checkout-form-card .button.wp-hide-pw {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 6px 12px;
	border: 0;
	border-radius: 999px;
	background: #ff006d;
	color: #ffffff;
	font-size: 13px;
	font-weight: 900;
	box-shadow: none;
}

.ndt-checkout-form-card button.wp-hide-pw:hover,
.ndt-checkout-form-card .button.wp-hide-pw:hover {
	background: #0b1f3d;
	color: #ffffff;
}

/* Submit button */
.ndt-checkout-form-card input[type="submit"],
.ndt-checkout-form-card button[type="submit"],
.ndt-checkout-form-card .pmpro_btn,
.ndt-checkout-form-card .pmpro_btn-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 56px;
	padding: 16px 24px;
	border: 0;
	border-radius: 999px;
	background: #ff006d;
	color: #ffffff;
	font-size: 16px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.22);
}

.ndt-checkout-form-card input[type="submit"]:hover,
.ndt-checkout-form-card button[type="submit"]:hover,
.ndt-checkout-form-card .pmpro_btn:hover,
.ndt-checkout-form-card .pmpro_btn-submit:hover {
	background: #0b1f3d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(11, 31, 61, 0.18);
}

/* Already have account row */
.ndt-checkout-form-card .pmpro_actions_nav {
	margin: 22px -34px -34px;
	padding: 18px 34px;
	border-top: 1px solid rgba(11, 31, 61, 0.10);
	background: #f7f9fc;
	color: #667085;
	font-size: 15px;
	font-weight: 600;
}

.ndt-checkout-form-card .pmpro_actions_nav a {
	color: #0b1f3d;
	font-weight: 900;
	text-underline-offset: 3px;
}

.ndt-checkout-form-card .pmpro_actions_nav a:hover {
	color: #ff006d;
}

/* Sidebar */
.ndt-checkout-sidebar {
	display: grid;
	gap: 18px;
	position: sticky;
	top: 96px;
}

.ndt-checkout-side-card {
	padding: 28px;
}

.ndt-checkout-side-card h2,
.ndt-checkout-side-card h3 {
	margin: 0;
	color: #0b1f3d;
	line-height: 1.08;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.ndt-checkout-side-card h2 {
	font-size: 30px;
}

.ndt-checkout-side-card h3 {
	font-size: 24px;
}

.ndt-checkout-side-card ul {
	display: grid;
	gap: 12px;
	margin: 22px 0 0;
	padding: 0;
	list-style: none;
}

.ndt-checkout-side-card li {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	gap: 10px;
	color: #344054;
	font-size: 15px;
	line-height: 1.45;
	font-weight: 700;
}

.ndt-checkout-side-card li::before {
	content: "✓";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 999px;
	background: #ff006d;
	color: #ffffff;
	font-size: 14px;
	font-weight: 950;
	line-height: 1;
}

.ndt-checkout-side-card--light {
	background: #f7f9fc;
}

.ndt-checkout-side-card p {
	margin: 10px 0 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.6;
	font-weight: 600;
}

.ndt-checkout-side-card a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 18px;
	min-height: 48px;
	padding: 14px 18px;
	border-radius: 999px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 15px;
	font-weight: 900;
	text-decoration: none;
}

.ndt-checkout-side-card a:hover {
	background: #ff006d;
	color: #ffffff;
}

@media (max-width: 980px) {
	.ndt-checkout-layout {
		grid-template-columns: 1fr;
	}

	.ndt-checkout-sidebar {
		position: static;
	}
}

@media (max-width: 680px) {
	.ndt-checkout-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ndt-checkout-hero {
		padding: 34px 0 56px;
	}

	.ndt-checkout-heading h1 {
		font-size: 42px;
	}

	.ndt-checkout-heading p {
		font-size: 17px;
	}

	.ndt-checkout-info-card,
	.ndt-checkout-form-card,
	.ndt-checkout-side-card {
		border-radius: 24px;
	}

	.ndt-checkout-info-card,
	.ndt-checkout-form-card,
	.ndt-checkout-side-card {
		padding: 24px;
	}

	.ndt-checkout-form-card::before {
		left: 24px;
		right: 24px;
	}

	.ndt-checkout-form-card .pmpro_checkout-fields {
		grid-template-columns: 1fr;
	}

	.ndt-checkout-form-card .pmpro_actions_nav {
		margin: 22px -24px -24px;
		padding: 18px 24px;
	}
}

/* =========================================================
   NDT Jobs - Employer Dashboard Page
   Template: page-employer-dashboard.php
========================================================= */

body.ndt-employer-dashboard-page {
	background: #f7f9fc;
	color: #101828;
}

body.ndt-employer-dashboard-page .wp-site-blocks {
	background: #f7f9fc;
}

.ndt-employer-dash {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.10), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #f7f9fc 34rem, #f7f9fc 100%);
}

.ndt-employer-dash__container {
	width: min(1160px, 100%);
	margin: 0 auto;
	padding-left: 20px;
	padding-right: 20px;
}

.ndt-employer-dash__hero {
	padding: 46px 0 26px;
}

.ndt-employer-dash__hero-card,
.ndt-employer-dash__panel,
.ndt-employer-dash__notice-card {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-employer-dash__hero-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 28px;
	align-items: center;
	padding: 34px;
	position: relative;
	overflow: hidden;
}

.ndt-employer-dash__hero-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 34px;
	right: 34px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-employer-dash__eyebrow {
	display: inline-flex;
	margin-bottom: 10px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-employer-dash__hero-card h1,
.ndt-employer-dash__panel-heading h2,
.ndt-employer-dash__notice-card h2 {
	margin: 0;
	color: #0b1f3d;
	font-weight: 950;
	letter-spacing: -0.05em;
}

.ndt-employer-dash__hero-card h1 {
	font-size: clamp(42px, 5vw, 68px);
	line-height: 0.98;
}

.ndt-employer-dash__hero-card p {
	max-width: 760px;
	margin: 16px 0 0;
	color: #667085;
	font-size: 18px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-employer-dash__hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.ndt-employer-dash__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 14px 18px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}

.ndt-employer-dash__button:hover {
	transform: translateY(-1px);
}

.ndt-employer-dash__button--primary {
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.22);
}

.ndt-employer-dash__button--primary:hover {
	background: #0b1f3d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(11, 31, 61, 0.18);
}

.ndt-employer-dash__button--secondary {
	border-color: rgba(11, 31, 61, 0.14);
	background: #ffffff;
	color: #0b1f3d;
}

.ndt-employer-dash__button--secondary:hover {
	border-color: rgba(255, 0, 109, 0.36);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
	box-shadow: none;
}

.ndt-employer-dash__main {
	padding: 0 0 76px;
}

.ndt-employer-dash__grid {
	display: grid;
	gap: 24px;
}

.ndt-employer-dash__panel {
	padding: 30px;
}

.ndt-employer-dash__panel-heading {
	margin-bottom: 22px;
}

.ndt-employer-dash__panel-heading--split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 380px);
	gap: 20px;
	align-items: end;
}

.ndt-employer-dash__panel-heading h2 {
	font-size: 32px;
	line-height: 1.05;
}

.ndt-employer-dash__panel-heading p {
	margin: 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-employer-dash__quick-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.ndt-employer-dash__quick-card {
	display: block;
	min-height: 146px;
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 22px;
	background: #f7f9fc;
	text-decoration: none;
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.ndt-employer-dash__quick-card:hover {
	transform: translateY(-2px);
	border-color: rgba(255, 0, 109, 0.24);
	box-shadow: 0 18px 48px rgba(11, 31, 61, 0.10);
}

.ndt-employer-dash__quick-card--primary {
	background: #0b1f3d;
	color: #ffffff;
}

.ndt-employer-dash__quick-card strong {
	display: block;
	margin-bottom: 8px;
	color: #0b1f3d;
	font-size: 17px;
	line-height: 1.2;
	font-weight: 950;
}

.ndt-employer-dash__quick-card span {
	display: block;
	color: #667085;
	font-size: 14px;
	line-height: 1.5;
	font-weight: 600;
}

.ndt-employer-dash__quick-card--primary strong,
.ndt-employer-dash__quick-card--primary span {
	color: #ffffff;
}

.ndt-employer-dash__notice-card {
	max-width: 720px;
	padding: 34px;
}

.ndt-employer-dash__notice-card h2 {
	font-size: 38px;
	line-height: 1.05;
}

.ndt-employer-dash__notice-card p {
	margin: 14px 0 22px;
	color: #667085;
	font-size: 17px;
	line-height: 1.6;
}

/* Shortcode wrappers */
.ndt-employer-dash__shortcode-wrap {
	min-width: 0;
}

/* Try to neutralize stacked shortcode card margins */
.ndt-employer-dash__shortcode-wrap > *:first-child {
	margin-top: 0 !important;
}

.ndt-employer-dash__shortcode-wrap > *:last-child {
	margin-bottom: 0 !important;
}

/* Package status shortcode cleanup */
.ndt-employer-dash__package-wrap > h1:first-child,
.ndt-employer-dash__package-wrap > h2:first-child {
	display: none;
}

.ndt-employer-dash__package-wrap {
	max-width: none;
}

/* Employer dashboard shortcode cleanup */
.ndt-employer-dash__dashboard-wrap > h1:first-child,
.ndt-employer-dash__dashboard-wrap > h2:first-child,
.ndt-employer-dash__dashboard-wrap > h3:first-child {
	display: none;
}

/* Common employer shortcode buttons */
.ndt-employer-dash__dashboard-wrap a,
.ndt-employer-dash__package-wrap a {
	font-weight: 900;
}

/* If shortcode has its own centered max-width, let it breathe */
.ndt-employer-dash__dashboard-wrap > div,
.ndt-employer-dash__package-wrap > div {
	max-width: 100% !important;
}

/* Job cards inside employer dashboard, broad cleanup */
.ndt-employer-dash__dashboard-wrap .ndt-employer-job-card,
.ndt-employer-dash__dashboard-wrap .employer-job-card,
.ndt-employer-dash__dashboard-wrap [class*="job-card"] {
	box-sizing: border-box;
}

/* Protect against action buttons overflowing */
.ndt-employer-dash__dashboard-wrap a,
.ndt-employer-dash__dashboard-wrap button {
	box-sizing: border-box;
}

/* Mobile later, but basic tablet guard now */
@media (max-width: 980px) {
	.ndt-employer-dash__hero-card,
	.ndt-employer-dash__panel-heading--split {
		grid-template-columns: 1fr;
	}

	.ndt-employer-dash__hero-actions {
		justify-content: flex-start;
	}

	.ndt-employer-dash__quick-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	.ndt-employer-dash__container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ndt-employer-dash__hero {
		padding: 34px 0 22px;
	}

	.ndt-employer-dash__hero-card,
	.ndt-employer-dash__panel,
	.ndt-employer-dash__notice-card {
		padding: 24px;
		border-radius: 24px;
	}

	.ndt-employer-dash__hero-card::before {
		left: 24px;
		right: 24px;
	}

	.ndt-employer-dash__hero-card h1 {
		font-size: 40px;
	}

	.ndt-employer-dash__quick-grid {
		grid-template-columns: 1fr;
	}

	.ndt-employer-dash__button {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Employer Dashboard Tabs
========================================================= */

.ndt-employer-dash__nav-section {
	padding: 0 0 24px;
}

.ndt-employer-dash__tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	align-items: center;
	padding: 18px 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.09);
}

.ndt-employer-dash__tabs a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 10px 4px;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	position: relative;
}

.ndt-employer-dash__tabs a::after {
	content: "";
	position: absolute;
	left: 4px;
	right: 4px;
	bottom: 4px;
	height: 3px;
	border-radius: 999px;
	background: #ff006d;
	opacity: 0;
	transform: scaleX(0.55);
	transition: opacity 0.18s ease, transform 0.18s ease;
}

.ndt-employer-dash__tabs a:hover {
	color: #ff006d;
}

.ndt-employer-dash__tabs a:hover::after {
	opacity: 1;
	transform: scaleX(1);
}

/* Account for anchor jump under sticky/header areas */
#employer-status,
#employer-quick-actions,
#employer-profile,
#employer-hiring-plan,
#employer-jobs,
#employer-applications {
	scroll-margin-top: 110px;
}

@media (min-width: 981px) {
	.ndt-employer-dash__nav-section {
		position: sticky;
		top: 0;
		z-index: 20;
		padding-top: 8px;
		background: rgba(247, 249, 252, 0.86);
		backdrop-filter: blur(10px);
	}
}

@media (max-width: 680px) {
	.ndt-employer-dash__tabs {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		padding: 14px;
		border-radius: 20px;
	}

	.ndt-employer-dash__tabs a {
		padding: 12px 10px;
		border: 1px solid rgba(11, 31, 61, 0.10);
		border-radius: 14px;
		background: #f7f9fc;
	}

	.ndt-employer-dash__tabs a::after {
		display: none;
	}
}

.ndt-employer-dash__anchor {
	height: 1px;
	margin-top: -1px;
}

/* =========================================================
   NDT Jobs - Employer Dashboard Package Status Polish
========================================================= */

.ndt-employer-dash__module {
	min-width: 0;
}

.ndt-employer-dash .ndt-package-status-card {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 30px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
	position: relative;
	overflow: hidden;
}

.ndt-employer-dash .ndt-package-status-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 30px;
	right: 30px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-employer-dash .ndt-package-status-card__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 24px;
	position: relative;
	z-index: 1;
}

.ndt-employer-dash .ndt-package-status-card__eyebrow {
	margin: 0 0 8px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-employer-dash .ndt-package-status-card h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: 34px;
	line-height: 1.04;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-employer-dash .ndt-package-status-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 9px 14px;
	border-radius: 999px;
	background: rgba(255, 0, 109, 0.10);
	color: #ff006d;
	font-size: 13px;
	font-weight: 900;
	white-space: nowrap;
}

.ndt-employer-dash .ndt-package-status-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	position: relative;
	z-index: 1;
}

.ndt-employer-dash .ndt-package-status-metric {
	min-height: 112px;
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 20px;
	background: #f7f9fc;
}

.ndt-employer-dash .ndt-package-status-metric span,
.ndt-employer-dash .ndt-package-status-footer span {
	display: block;
	margin-bottom: 8px;
	color: #667085;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-employer-dash .ndt-package-status-metric strong {
	display: block;
	color: #0b1f3d;
	font-size: 28px;
	line-height: 1.05;
	font-weight: 950;
	letter-spacing: -0.04em;
}

.ndt-employer-dash .ndt-package-status-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	margin-top: 24px;
	padding-top: 22px;
	border-top: 1px solid rgba(11, 31, 61, 0.10);
	position: relative;
	z-index: 1;
}

.ndt-employer-dash .ndt-package-status-footer strong {
	display: block;
	color: #0b1f3d;
	font-size: 20px;
	line-height: 1.2;
	font-weight: 900;
}

.ndt-employer-dash .ndt-package-status-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.ndt-employer-dash .ndt-package-status-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 13px 18px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

.ndt-employer-dash .ndt-package-status-actions a:first-child {
	background: #ff006d;
	box-shadow: 0 14px 32px rgba(255, 0, 109, 0.18);
}

.ndt-employer-dash .ndt-package-status-actions a:hover {
	background: #ff006d;
	color: #ffffff;
}

.ndt-employer-dash .ndt-package-status-actions a:first-child:hover {
	background: #0b1f3d;
	color: #ffffff;
}

@media (max-width: 980px) {
	.ndt-employer-dash .ndt-package-status-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ndt-employer-dash .ndt-package-status-footer {
		align-items: flex-start;
		flex-direction: column;
	}

	.ndt-employer-dash .ndt-package-status-actions {
		justify-content: flex-start;
	}
}

@media (max-width: 680px) {
	.ndt-employer-dash .ndt-package-status-card {
		padding: 24px;
		border-radius: 24px;
	}

	.ndt-employer-dash .ndt-package-status-card::before {
		left: 24px;
		right: 24px;
	}

	.ndt-employer-dash .ndt-package-status-card__header {
		flex-direction: column;
	}

	.ndt-employer-dash .ndt-package-status-grid {
		grid-template-columns: 1fr;
	}

	.ndt-employer-dash .ndt-package-status-actions,
	.ndt-employer-dash .ndt-package-status-actions a {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Employer Dashboard Full Desktop Pass
   Template: page-employer-dashboard.php
========================================================= */

body.ndt-employer-dashboard-page {
	background: #f7f9fc;
	color: #101828;
}

body.ndt-employer-dashboard-page .wp-site-blocks {
	background: #f7f9fc;
}

.ndt-employer-dash,
.ndt-employer-dash * {
	box-sizing: border-box;
}

.ndt-employer-dash {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.10), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #f7f9fc 34rem, #f7f9fc 100%);
}

.ndt-employer-dash__container {
	width: min(1160px, 100%);
	margin: 0 auto;
	padding-left: 20px;
	padding-right: 20px;
}

/* Hero */

.ndt-employer-dash__hero {
	padding: 46px 0 24px;
}

.ndt-employer-dash__hero-card,
.ndt-employer-dash__notice-card {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-employer-dash__hero-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 28px;
	align-items: center;
	padding: 34px;
	position: relative;
	overflow: hidden;
}

.ndt-employer-dash__hero-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 34px;
	right: 34px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-employer-dash__eyebrow {
	display: inline-flex;
	margin-bottom: 10px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-employer-dash__hero-card h1,
.ndt-employer-dash__notice-card h2 {
	margin: 0;
	color: #0b1f3d;
	font-weight: 950;
	letter-spacing: -0.05em;
}

.ndt-employer-dash__hero-card h1 {
	font-size: clamp(42px, 5vw, 68px);
	line-height: 0.98;
}

.ndt-employer-dash__hero-card p {
	max-width: 760px;
	margin: 16px 0 0;
	color: #667085;
	font-size: 18px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-employer-dash__hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.ndt-employer-dash__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 14px 18px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}

.ndt-employer-dash__button:hover {
	transform: translateY(-1px);
}

.ndt-employer-dash__button--primary {
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.22);
}

.ndt-employer-dash__button--primary:hover {
	background: #0b1f3d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(11, 31, 61, 0.18);
}

.ndt-employer-dash__button--secondary {
	border-color: rgba(11, 31, 61, 0.14);
	background: #ffffff;
	color: #0b1f3d;
}

.ndt-employer-dash__button--secondary:hover {
	border-color: rgba(255, 0, 109, 0.36);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
	box-shadow: none;
}

/* Dashboard nav */

.ndt-employer-dash__nav-section {
	padding: 0 0 24px;
}

.ndt-employer-dash__tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	align-items: center;
	padding: 18px 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.09);
}

.ndt-employer-dash__tabs a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 10px 4px;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	position: relative;
}

.ndt-employer-dash__tabs a::after {
	content: "";
	position: absolute;
	left: 4px;
	right: 4px;
	bottom: 4px;
	height: 3px;
	border-radius: 999px;
	background: #ff006d;
	opacity: 0;
	transform: scaleX(0.55);
	transition: opacity 0.18s ease, transform 0.18s ease;
}

.ndt-employer-dash__tabs a:hover {
	color: #ff006d;
}

.ndt-employer-dash__tabs a:hover::after {
	opacity: 1;
	transform: scaleX(1);
}

@media (min-width: 981px) {
	.ndt-employer-dash__nav-section {
		position: sticky;
		top: 0;
		z-index: 20;
		padding-top: 8px;
		background: rgba(247, 249, 252, 0.86);
		backdrop-filter: blur(10px);
	}
}

/* Main layout */

.ndt-employer-dash__main {
	padding: 0 0 76px;
}

.ndt-employer-dash__grid,
.ndt-employer-dash .ndt-employer-dashboard {
	display: grid;
	gap: 24px;
	width: 100%;
	max-width: 100%;
	margin: 0;
}

.ndt-employer-dash__module,
.ndt-employer-dash__module > * {
	min-width: 0;
	max-width: 100%;
}

/* Remove duplicate shortcode dashboard heading on main dashboard only */
.ndt-employer-dash__module--main .ndt-employer-dashboard > .ndt-employer-dashboard-header {
	display: none;
}

/* Package status */

.ndt-employer-dash .ndt-package-status-card {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 30px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
	position: relative;
	overflow: hidden;
}

.ndt-employer-dash .ndt-package-status-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 30px;
	right: 30px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-employer-dash .ndt-package-status-card__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 24px;
	position: relative;
	z-index: 1;
}

.ndt-employer-dash .ndt-package-status-card__eyebrow {
	margin: 0 0 8px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-employer-dash .ndt-package-status-card h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: 34px;
	line-height: 1.04;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-employer-dash .ndt-package-status-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 9px 14px;
	border-radius: 999px;
	background: rgba(255, 0, 109, 0.10);
	color: #ff006d;
	font-size: 13px;
	font-weight: 900;
	white-space: nowrap;
}

.ndt-employer-dash .ndt-package-status-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	position: relative;
	z-index: 1;
}

.ndt-employer-dash .ndt-package-status-metric {
	min-height: 112px;
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 20px;
	background: #f7f9fc;
}

.ndt-employer-dash .ndt-package-status-metric span,
.ndt-employer-dash .ndt-package-status-footer span {
	display: block;
	margin-bottom: 8px;
	color: #667085;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-employer-dash .ndt-package-status-metric strong {
	display: block;
	color: #0b1f3d;
	font-size: 28px;
	line-height: 1.05;
	font-weight: 950;
	letter-spacing: -0.04em;
}

.ndt-employer-dash .ndt-package-status-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	margin-top: 24px;
	padding-top: 22px;
	border-top: 1px solid rgba(11, 31, 61, 0.10);
	position: relative;
	z-index: 1;
}

.ndt-employer-dash .ndt-package-status-footer strong {
	display: block;
	color: #0b1f3d;
	font-size: 20px;
	line-height: 1.2;
	font-weight: 900;
}

.ndt-employer-dash .ndt-package-status-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.ndt-employer-dash .ndt-package-status-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 13px 18px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

.ndt-employer-dash .ndt-package-status-actions a:first-child {
	background: #ff006d;
	box-shadow: 0 14px 32px rgba(255, 0, 109, 0.18);
}

.ndt-employer-dash .ndt-package-status-actions a:hover {
	background: #ff006d;
	color: #ffffff;
}

.ndt-employer-dash .ndt-package-status-actions a:first-child:hover {
	background: #0b1f3d;
}

/* Company profile card */

.ndt-employer-dash .ndt-employer-company-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 24px;
	align-items: center;
	padding: 30px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-employer-dash .ndt-employer-company-card-main {
	display: grid;
	grid-template-columns: 84px minmax(0, 1fr);
	gap: 18px;
	align-items: center;
	min-width: 0;
}

.ndt-employer-dash .ndt-employer-company-logo,
.ndt-employer-dash .ndt-employer-company-logo-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 84px;
	height: 84px;
	border-radius: 22px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 36px;
	font-weight: 950;
	box-shadow: 0 14px 34px rgba(11, 31, 61, 0.18);
	object-fit: cover;
}

.ndt-employer-dash .ndt-employer-company-label {
	display: inline-flex;
	margin-bottom: 6px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-employer-dash .ndt-employer-company-card h3 {
	margin: 0;
	color: #0b1f3d;
	font-size: 28px;
	line-height: 1.08;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.ndt-employer-dash .ndt-employer-company-card p {
	margin: 8px 0 0;
	max-width: 520px;
	color: #667085;
	font-size: 16px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-employer-dash .ndt-employer-company-card-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

/* Shared buttons */

.ndt-employer-dash .ndt-employer-button,
.ndt-employer-dash .ndt-employer-job-card-actions a,
.ndt-employer-dash .ndt-employer-mini-button,
.ndt-employer-dash .ndt-employer-empty-state a,
.ndt-employer-dash .ndt-employer-dashboard a.ndt-employer-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 12px 16px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

.ndt-employer-dash .ndt-employer-button:hover,
.ndt-employer-dash .ndt-employer-job-card-actions a:hover,
.ndt-employer-dash .ndt-employer-mini-button:hover,
.ndt-employer-dash .ndt-employer-empty-state a:hover {
	background: #ff006d;
	color: #ffffff;
}

.ndt-employer-dash .ndt-employer-button-secondary {
	border-color: rgba(11, 31, 61, 0.16);
	background: #ffffff;
	color: #0b1f3d;
}

.ndt-employer-dash .ndt-employer-button-secondary:hover {
	border-color: rgba(255, 0, 109, 0.32);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

/* Quick links */

.ndt-employer-dash .ndt-employer-quick-links {
	padding: 30px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-employer-dash .ndt-employer-quick-links-header {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	align-items: end;
	margin-bottom: 22px;
}

.ndt-employer-dash .ndt-employer-quick-links-header h3 {
	margin: 0;
	color: #0b1f3d;
	font-size: 30px;
	line-height: 1.05;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-employer-dash .ndt-employer-quick-links-header p {
	margin: 0;
	color: #667085;
	font-size: 15px;
	font-weight: 600;
}

.ndt-employer-dash .ndt-employer-quick-links-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.ndt-employer-dash .ndt-employer-quick-link-card {
	display: block;
	min-height: 146px;
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 22px;
	background: #f7f9fc;
	text-decoration: none;
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.ndt-employer-dash .ndt-employer-quick-link-card:hover {
	transform: translateY(-2px);
	border-color: rgba(255, 0, 109, 0.24);
	box-shadow: 0 18px 48px rgba(11, 31, 61, 0.10);
}

.ndt-employer-dash .ndt-employer-quick-link-primary {
	background: #0b1f3d;
}

.ndt-employer-dash .ndt-employer-quick-link-card span {
	display: block;
	margin-bottom: 8px;
	color: #0b1f3d;
	font-size: 17px;
	line-height: 1.2;
	font-weight: 950;
}

.ndt-employer-dash .ndt-employer-quick-link-card small {
	display: block;
	color: #667085;
	font-size: 14px;
	line-height: 1.5;
	font-weight: 600;
}

.ndt-employer-dash .ndt-employer-quick-link-primary span,
.ndt-employer-dash .ndt-employer-quick-link-primary small {
	color: #ffffff;
}

/* Stats */

.ndt-employer-dash .ndt-employer-dashboard-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.ndt-employer-dash .ndt-employer-stat-card {
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 24px;
	background: #ffffff;
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.08);
}

.ndt-employer-dash .ndt-stat-label {
	display: block;
	margin-bottom: 10px;
	color: #667085;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-employer-dash .ndt-stat-value {
	display: block;
	color: #0b1f3d;
	font-size: 42px;
	line-height: 1;
	letter-spacing: -0.05em;
	font-weight: 950;
}

.ndt-employer-dash .ndt-stat-help {
	display: block;
	margin-top: 8px;
	color: #667085;
	font-size: 14px;
	line-height: 1.45;
	font-weight: 600;
}

/* Your Jobs */

.ndt-employer-dash .ndt-employer-section {
	padding: 30px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-employer-dash .ndt-employer-section > h3 {
	margin: 0 0 22px;
	color: #0b1f3d;
	font-size: 32px;
	line-height: 1.05;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-employer-dash .ndt-employer-job-list {
	display: grid;
	gap: 18px;
}

.ndt-employer-dash .ndt-employer-job-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 250px 340px;
	gap: 22px;
	align-items: center;
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 24px;
	background: #ffffff;
	box-shadow: 0 18px 48px rgba(11, 31, 61, 0.07);
}

.ndt-employer-dash .ndt-employer-job-card h4 {
	margin: 0;
	color: #0b1f3d;
	font-size: 24px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-employer-dash .ndt-employer-job-location {
	margin: 8px 0 0;
	color: #667085;
	font-size: 15px;
	font-weight: 700;
}

.ndt-employer-dash .ndt-employer-job-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 18px;
}

.ndt-employer-dash .ndt-employer-job-meta span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 7px 11px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

.ndt-employer-dash .ndt-employer-job-status {
	border-color: rgba(18, 183, 106, 0.24) !important;
	background: rgba(236, 253, 243, 0.95) !important;
	color: #027a48 !important;
}

.ndt-employer-dash .ndt-employer-job-activity {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.ndt-employer-dash .ndt-employer-job-activity-item {
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-employer-dash .ndt-employer-job-activity-value {
	display: block;
	color: #0b1f3d;
	font-size: 30px;
	line-height: 1;
	font-weight: 950;
}

.ndt-employer-dash .ndt-employer-job-activity-label {
	display: block;
	margin-top: 8px;
	color: #667085;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-employer-dash .ndt-employer-job-card-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.ndt-employer-dash .ndt-employer-job-card-actions a {
	width: 100%;
}

.ndt-employer-dash .ndt-employer-job-card-actions a:nth-child(4) {
	background: #ff006d;
}

.ndt-employer-dash .ndt-employer-job-card-actions a:nth-child(5) {
	grid-column: 1 / -1;
}

/* Empty state */

.ndt-employer-dash .ndt-employer-empty-state {
	padding: 28px;
	border: 1px dashed rgba(11, 31, 61, 0.20);
	border-radius: 24px;
	background: #f7f9fc;
}

.ndt-employer-dash .ndt-employer-empty-state h4 {
	margin: 0 0 8px;
	color: #0b1f3d;
	font-size: 24px;
	font-weight: 950;
}

.ndt-employer-dash .ndt-employer-empty-state p {
	margin: 0 0 18px;
	color: #667085;
	font-size: 16px;
	line-height: 1.6;
}

/* Notice card */

.ndt-employer-dash__notice-card {
	max-width: 720px;
	padding: 34px;
}

.ndt-employer-dash__notice-card h2 {
	font-size: 38px;
	line-height: 1.05;
}

.ndt-employer-dash__notice-card p {
	margin: 14px 0 22px;
	color: #667085;
	font-size: 17px;
	line-height: 1.6;
}

/* Anchor offsets */

#employer-hiring-plan,
#employer-company-profile,
#employer-quick-actions,
#employer-stats,
#ndt-employer-your-jobs {
	scroll-margin-top: 120px;
}

/* Tablet guard */

@media (max-width: 1100px) {
	.ndt-employer-dash .ndt-employer-job-card {
		grid-template-columns: 1fr;
	}

	.ndt-employer-dash .ndt-employer-quick-links-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 980px) {
	.ndt-employer-dash__hero-card,
	.ndt-employer-dash .ndt-employer-company-card {
		grid-template-columns: 1fr;
	}

	.ndt-employer-dash__hero-actions,
	.ndt-employer-dash .ndt-employer-company-card-actions {
		justify-content: flex-start;
	}

	.ndt-employer-dash .ndt-package-status-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ndt-employer-dash .ndt-package-status-footer {
		align-items: flex-start;
		flex-direction: column;
	}

	.ndt-employer-dash .ndt-package-status-actions {
		justify-content: flex-start;
	}

	.ndt-employer-dash .ndt-employer-dashboard-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.ndt-employer-dash__container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ndt-employer-dash__hero {
		padding: 34px 0 22px;
	}

	.ndt-employer-dash__hero-card,
	.ndt-employer-dash .ndt-package-status-card,
	.ndt-employer-dash .ndt-employer-company-card,
	.ndt-employer-dash .ndt-employer-quick-links,
	.ndt-employer-dash .ndt-employer-section,
	.ndt-employer-dash__notice-card {
		padding: 24px;
		border-radius: 24px;
	}

	.ndt-employer-dash__hero-card::before,
	.ndt-employer-dash .ndt-package-status-card::before {
		left: 24px;
		right: 24px;
	}

	.ndt-employer-dash__hero-card h1 {
		font-size: 40px;
	}

	.ndt-employer-dash__tabs {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		padding: 14px;
		border-radius: 20px;
	}

	.ndt-employer-dash__tabs a {
		padding: 12px 10px;
		border: 1px solid rgba(11, 31, 61, 0.10);
		border-radius: 14px;
		background: #f7f9fc;
	}

	.ndt-employer-dash__tabs a::after {
		display: none;
	}

	.ndt-employer-dash .ndt-package-status-card__header {
		flex-direction: column;
	}

	.ndt-employer-dash .ndt-package-status-grid,
	.ndt-employer-dash .ndt-employer-quick-links-grid,
	.ndt-employer-dash .ndt-employer-job-activity,
	.ndt-employer-dash .ndt-employer-job-card-actions {
		grid-template-columns: 1fr;
	}

	.ndt-employer-dash__button,
	.ndt-employer-dash .ndt-package-status-actions,
	.ndt-employer-dash .ndt-package-status-actions a,
	.ndt-employer-dash .ndt-employer-button,
	.ndt-employer-dash .ndt-employer-job-card-actions a {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Employer Dashboard V2
   Custom main dashboard, shortcode only for subviews
========================================================= */

body.ndt-employer-dashboard-page {
	background: #f7f9fc;
	color: #101828;
}

body.ndt-employer-dashboard-page .wp-site-blocks {
	background: #f7f9fc;
}

.ndt-employer-v2,
.ndt-employer-v2 * {
	box-sizing: border-box;
}

.ndt-employer-v2 {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.10), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #f7f9fc 34rem, #f7f9fc 100%);
}

.ndt-employer-v2__container {
	width: min(1160px, 100%);
	margin: 0 auto;
	padding-left: 20px;
	padding-right: 20px;
}

.ndt-employer-v2__hero {
	padding: 46px 0 24px;
}

.ndt-employer-v2__hero-card,
.ndt-employer-v2__notice,
.ndt-employer-v2__plan-card,
.ndt-employer-v2__company-card,
.ndt-employer-v2__actions-card,
.ndt-employer-v2__jobs-card,
.ndt-employer-v2__stat-card {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-employer-v2__hero-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 28px;
	align-items: center;
	padding: 34px;
	position: relative;
	overflow: hidden;
}

.ndt-employer-v2__hero-card::before,
.ndt-employer-v2__plan-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 34px;
	right: 34px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-employer-v2__eyebrow {
	display: inline-flex;
	margin-bottom: 10px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-employer-v2__hero-card h1,
.ndt-employer-v2__notice h2,
.ndt-employer-v2__card-heading h2,
.ndt-employer-v2__company-card h2,
.ndt-employer-v2__section-heading h2 {
	margin: 0;
	color: #0b1f3d;
	font-weight: 950;
	letter-spacing: -0.05em;
}

.ndt-employer-v2__hero-card h1 {
	font-size: clamp(42px, 5vw, 68px);
	line-height: 0.98;
}

.ndt-employer-v2__hero-card p {
	max-width: 760px;
	margin: 16px 0 0;
	color: #667085;
	font-size: 18px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-employer-v2__hero-actions,
.ndt-employer-v2__button-row,
.ndt-employer-v2__company-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.ndt-employer-v2__button,
.ndt-employer-v2__mini-button,
.ndt-employer-v2__job-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 13px 18px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}

.ndt-employer-v2__button {
	min-height: 50px;
	font-size: 15px;
}

.ndt-employer-v2__button:hover,
.ndt-employer-v2__mini-button:hover,
.ndt-employer-v2__job-actions a:hover {
	transform: translateY(-1px);
	background: #ff006d;
	color: #ffffff;
}

.ndt-employer-v2__button--primary,
.ndt-employer-v2__mini-button--primary {
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.18);
}

.ndt-employer-v2__button--primary:hover,
.ndt-employer-v2__mini-button--primary:hover {
	background: #0b1f3d;
	color: #ffffff;
}

.ndt-employer-v2__button--secondary,
.ndt-employer-v2__mini-button {
	border-color: rgba(11, 31, 61, 0.14);
	background: #ffffff;
	color: #0b1f3d;
}

.ndt-employer-v2__button--secondary:hover,
.ndt-employer-v2__mini-button:hover {
	border-color: rgba(255, 0, 109, 0.36);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
	box-shadow: none;
}

/* Nav */

.ndt-employer-v2__nav-section {
	padding: 0 0 24px;
}

.ndt-employer-v2__tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	align-items: center;
	padding: 18px 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.09);
}

.ndt-employer-v2__tabs a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 10px 4px;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	position: relative;
}

.ndt-employer-v2__tabs a::after {
	content: "";
	position: absolute;
	left: 4px;
	right: 4px;
	bottom: 4px;
	height: 3px;
	border-radius: 999px;
	background: #ff006d;
	opacity: 0;
	transform: scaleX(0.55);
	transition: opacity 0.18s ease, transform 0.18s ease;
}

.ndt-employer-v2__tabs a:hover {
	color: #ff006d;
}

.ndt-employer-v2__tabs a:hover::after {
	opacity: 1;
	transform: scaleX(1);
}

@media (min-width: 981px) {
	.ndt-employer-v2__nav-section {
		position: sticky;
		top: 0;
		z-index: 20;
		padding-top: 8px;
		background: rgba(247, 249, 252, 0.86);
		backdrop-filter: blur(10px);
	}
}

/* Main */

.ndt-employer-v2__main {
	padding: 0 0 76px;
}

.ndt-employer-v2__dashboard {
	display: grid;
	gap: 24px;
}

.ndt-employer-v2__top-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
	gap: 24px;
	align-items: stretch;
}

.ndt-employer-v2__plan-card,
.ndt-employer-v2__company-card,
.ndt-employer-v2__actions-card,
.ndt-employer-v2__jobs-card,
.ndt-employer-v2__notice {
	padding: 30px;
	position: relative;
	overflow: hidden;
}

.ndt-employer-v2__card-heading {
	position: relative;
	margin-bottom: 24px;
}

.ndt-employer-v2__card-heading h2,
.ndt-employer-v2__company-card h2,
.ndt-employer-v2__section-heading h2 {
	font-size: 32px;
	line-height: 1.05;
}

.ndt-employer-v2__status-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	margin-top: 14px;
	padding: 8px 13px;
	border-radius: 999px;
	background: rgba(255, 0, 109, 0.10);
	color: #ff006d;
	font-size: 13px;
	font-weight: 900;
}

.ndt-employer-v2__metric-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.ndt-employer-v2__metric {
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-employer-v2__metric span,
.ndt-employer-v2__plan-footer span,
.ndt-employer-v2__stat-card span {
	display: block;
	margin-bottom: 8px;
	color: #667085;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-employer-v2__metric strong {
	display: block;
	color: #0b1f3d;
	font-size: 24px;
	line-height: 1.05;
	font-weight: 950;
	letter-spacing: -0.04em;
}

.ndt-employer-v2__plan-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	margin-top: 22px;
	padding-top: 22px;
	border-top: 1px solid rgba(11, 31, 61, 0.10);
}

.ndt-employer-v2__plan-footer strong {
	display: block;
	color: #0b1f3d;
	font-size: 19px;
	font-weight: 900;
}

/* Company */

.ndt-employer-v2__company-card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 22px;
}

.ndt-employer-v2__company-main {
	display: grid;
	grid-template-columns: 84px minmax(0, 1fr);
	gap: 18px;
	align-items: center;
}

.ndt-employer-v2__company-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 84px;
	height: 84px;
	border-radius: 22px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 36px;
	font-weight: 950;
	box-shadow: 0 14px 34px rgba(11, 31, 61, 0.18);
	overflow: hidden;
}

.ndt-employer-v2__company-logo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ndt-employer-v2__company-card p {
	margin: 8px 0 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-employer-v2__company-actions {
	justify-content: flex-start;
}

/* Stats */

.ndt-employer-v2__stats-row {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.ndt-employer-v2__stat-card {
	padding: 24px;
}

.ndt-employer-v2__stat-card strong {
	display: block;
	color: #0b1f3d;
	font-size: 42px;
	line-height: 1;
	letter-spacing: -0.05em;
	font-weight: 950;
}

.ndt-employer-v2__stat-card p {
	margin: 8px 0 0;
	color: #667085;
	font-size: 14px;
	line-height: 1.45;
	font-weight: 600;
}

/* Actions */

.ndt-employer-v2__section-heading {
	display: flex;
	justify-content: space-between;
	gap: 22px;
	align-items: end;
	margin-bottom: 22px;
}

.ndt-employer-v2__section-heading p {
	max-width: 380px;
	margin: 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-employer-v2__actions-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.ndt-employer-v2__action {
	display: block;
	min-height: 146px;
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 22px;
	background: #f7f9fc;
	text-decoration: none;
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.ndt-employer-v2__action:hover {
	transform: translateY(-2px);
	border-color: rgba(255, 0, 109, 0.24);
	box-shadow: 0 18px 48px rgba(11, 31, 61, 0.10);
}

.ndt-employer-v2__action--primary {
	background: #0b1f3d;
}

.ndt-employer-v2__action strong {
	display: block;
	margin-bottom: 8px;
	color: #0b1f3d;
	font-size: 17px;
	line-height: 1.2;
	font-weight: 950;
}

.ndt-employer-v2__action span {
	display: block;
	color: #667085;
	font-size: 14px;
	line-height: 1.5;
	font-weight: 600;
}

.ndt-employer-v2__action--primary strong,
.ndt-employer-v2__action--primary span {
	color: #ffffff;
}

/* Jobs */

.ndt-employer-v2__job-list {
	display: grid;
	gap: 18px;
}

.ndt-employer-v2__job-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 250px 340px;
	gap: 22px;
	align-items: center;
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 24px;
	background: #ffffff;
	box-shadow: 0 18px 48px rgba(11, 31, 61, 0.07);
}

.ndt-employer-v2__job-title-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
}

.ndt-employer-v2__job-card h3 {
	margin: 0;
	color: #0b1f3d;
	font-size: 24px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-employer-v2__job-card p {
	margin: 8px 0 0;
	color: #667085;
	font-size: 15px;
	font-weight: 700;
}

.ndt-employer-v2__job-status {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 7px 11px;
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
	white-space: nowrap;
}

.ndt-employer-v2__job-status--publish {
	background: rgba(236, 253, 243, 0.95);
	color: #027a48;
}

.ndt-employer-v2__job-status--expired {
	background: rgba(254, 243, 242, 0.96);
	color: #b42318;
}

.ndt-employer-v2__job-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 18px;
}

.ndt-employer-v2__job-meta span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 7px 11px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

.ndt-employer-v2__job-activity {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.ndt-employer-v2__job-activity div {
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-employer-v2__job-activity strong {
	display: block;
	color: #0b1f3d;
	font-size: 30px;
	line-height: 1;
	font-weight: 950;
}

.ndt-employer-v2__job-activity span {
	display: block;
	margin-top: 8px;
	color: #667085;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-employer-v2__job-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.ndt-employer-v2__job-actions a {
	width: 100%;
}

.ndt-employer-v2__job-actions a:nth-child(4) {
	background: #ff006d;
	color: #ffffff;
}

.ndt-employer-v2__job-actions a:nth-child(5) {
	grid-column: 1 / -1;
}

.ndt-employer-v2__empty {
	padding: 28px;
	border: 1px dashed rgba(11, 31, 61, 0.20);
	border-radius: 24px;
	background: #f7f9fc;
}

.ndt-employer-v2__empty h3 {
	margin: 0 0 8px;
	color: #0b1f3d;
	font-size: 24px;
	font-weight: 950;
}

.ndt-employer-v2__empty p {
	margin: 0 0 18px;
	color: #667085;
	font-size: 16px;
	line-height: 1.6;
}

/* Subviews still come from the existing shortcode */

.ndt-employer-v2__subview {
	padding: 30px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-employer-v2__subview .ndt-employer-dashboard {
	max-width: 100%;
	margin: 0;
}

/* Anchors */

#employer-overview,
#employer-company,
#employer-actions,
#employer-jobs {
	scroll-margin-top: 120px;
}

/* Basic tablet/mobile guard */

@media (max-width: 1100px) {
	.ndt-employer-v2__top-grid,
	.ndt-employer-v2__job-card {
		grid-template-columns: 1fr;
	}

	.ndt-employer-v2__actions-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 980px) {
	.ndt-employer-v2__hero-card,
	.ndt-employer-v2__section-heading {
		grid-template-columns: 1fr;
		display: grid;
	}

	.ndt-employer-v2__hero-actions,
	.ndt-employer-v2__button-row {
		justify-content: flex-start;
	}

	.ndt-employer-v2__metric-grid,
	.ndt-employer-v2__stats-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ndt-employer-v2__plan-footer {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 680px) {
	.ndt-employer-v2__container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ndt-employer-v2__hero {
		padding: 34px 0 22px;
	}

	.ndt-employer-v2__hero-card,
	.ndt-employer-v2__plan-card,
	.ndt-employer-v2__company-card,
	.ndt-employer-v2__actions-card,
	.ndt-employer-v2__jobs-card,
	.ndt-employer-v2__notice,
	.ndt-employer-v2__subview {
		padding: 24px;
		border-radius: 24px;
	}

	.ndt-employer-v2__hero-card::before,
	.ndt-employer-v2__plan-card::before {
		left: 24px;
		right: 24px;
	}

	.ndt-employer-v2__hero-card h1 {
		font-size: 40px;
	}

	.ndt-employer-v2__tabs {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		padding: 14px;
		border-radius: 20px;
	}

	.ndt-employer-v2__tabs a {
		padding: 12px 10px;
		border: 1px solid rgba(11, 31, 61, 0.10);
		border-radius: 14px;
		background: #f7f9fc;
	}

	.ndt-employer-v2__tabs a::after {
		display: none;
	}

	.ndt-employer-v2__company-main {
		grid-template-columns: 1fr;
	}

	.ndt-employer-v2__metric-grid,
	.ndt-employer-v2__stats-row,
	.ndt-employer-v2__actions-grid,
	.ndt-employer-v2__job-activity,
	.ndt-employer-v2__job-actions {
		grid-template-columns: 1fr;
	}

	.ndt-employer-v2__button,
	.ndt-employer-v2__mini-button,
	.ndt-employer-v2__job-actions a {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Employer Dashboard V2 UX Polish Pass
   Tighter dashboard feel + better job action hierarchy
========================================================= */

/* Tighten the dashboard hero */
.ndt-employer-v2__hero {
	padding: 30px 0 16px;
}

.ndt-employer-v2__hero-card {
	min-height: auto;
	padding: 28px 34px;
	border-radius: 28px;
}

.ndt-employer-v2__hero-card h1 {
	max-width: 760px;
	font-size: clamp(38px, 4.4vw, 58px);
	line-height: 1;
}

.ndt-employer-v2__hero-card p {
	margin-top: 12px;
	max-width: 720px;
	font-size: 17px;
	line-height: 1.5;
}

/* Make hero buttons feel like dashboard controls, not landing page CTAs */
.ndt-employer-v2__hero-actions {
	align-items: center;
}

.ndt-employer-v2__hero-actions .ndt-employer-v2__button {
	min-height: 46px;
	padding: 13px 18px;
}

/* Tighten sticky nav */
.ndt-employer-v2__nav-section {
	padding: 0 0 18px;
}

.ndt-employer-v2__tabs {
	padding: 12px 20px;
	border-radius: 20px;
	gap: 8px 20px;
}

.ndt-employer-v2__tabs a {
	min-height: 34px;
	font-size: 14px;
}

/* Pull main content up slightly */
.ndt-employer-v2__dashboard {
	gap: 20px;
}

/* Slightly tighten overview cards */
.ndt-employer-v2__plan-card,
.ndt-employer-v2__company-card,
.ndt-employer-v2__actions-card,
.ndt-employer-v2__jobs-card {
	border-radius: 28px;
}

.ndt-employer-v2__plan-card,
.ndt-employer-v2__company-card {
	padding: 28px;
}

/* Make the company card feel less empty */
.ndt-employer-v2__company-card {
	min-height: 100%;
}

.ndt-employer-v2__company-main {
	align-items: start;
}

.ndt-employer-v2__company-card p {
	max-width: 420px;
}

/* Stats: make them tighter and more dashboard-like */
.ndt-employer-v2__stats-row {
	gap: 16px;
}

.ndt-employer-v2__stat-card {
	padding: 22px 24px;
	border-radius: 24px;
}

.ndt-employer-v2__stat-card strong {
	font-size: 38px;
}

.ndt-employer-v2__stat-card p {
	font-size: 14px;
}

/* Quick Actions: compress from chunky cards to tighter action tiles */
.ndt-employer-v2__actions-card {
	padding: 26px 30px;
}

.ndt-employer-v2__section-heading {
	margin-bottom: 18px;
}

.ndt-employer-v2__section-heading h2 {
	font-size: 30px;
}

.ndt-employer-v2__section-heading p {
	max-width: 430px;
	font-size: 15px;
}

.ndt-employer-v2__actions-grid {
	gap: 12px;
}

.ndt-employer-v2__action {
	min-height: 112px;
	padding: 18px 20px;
	border-radius: 20px;
}

.ndt-employer-v2__action strong {
	font-size: 17px;
}

.ndt-employer-v2__action span {
	font-size: 14px;
	line-height: 1.45;
}

/* Jobs section: make it the main working area */
.ndt-employer-v2__jobs-card {
	padding: 28px 30px;
}

.ndt-employer-v2__jobs-card .ndt-employer-v2__section-heading {
	padding-bottom: 18px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
}

/* Job cards: reduce height and improve hierarchy */
.ndt-employer-v2__job-list {
	gap: 14px;
}

.ndt-employer-v2__job-card {
	grid-template-columns: minmax(0, 1fr) 230px 300px;
	gap: 18px;
	padding: 20px;
	border-radius: 22px;
	box-shadow: 0 14px 38px rgba(11, 31, 61, 0.06);
}

.ndt-employer-v2__job-card h3 {
	font-size: 23px;
}

.ndt-employer-v2__job-card p {
	font-size: 14px;
}

.ndt-employer-v2__job-meta {
	margin-top: 14px;
}

/* Activity cards: smaller, still readable */
.ndt-employer-v2__job-activity {
	gap: 10px;
}

.ndt-employer-v2__job-activity div {
	padding: 15px;
	border-radius: 16px;
}

.ndt-employer-v2__job-activity strong {
	font-size: 27px;
}

.ndt-employer-v2__job-activity span {
	font-size: 10.5px;
}

/* Action hierarchy:
   View Applications = primary
   View Matches = secondary navy
   View/Edit/Export = quieter utility actions
*/
.ndt-employer-v2__job-actions {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.ndt-employer-v2__job-actions a {
	min-height: 40px;
	padding: 11px 13px;
	font-size: 13px;
	box-shadow: none;
}

/* View Job */
.ndt-employer-v2__job-actions a:nth-child(1) {
	border-color: rgba(11, 31, 61, 0.14);
	background: #ffffff;
	color: #0b1f3d;
}

/* Edit Job */
.ndt-employer-v2__job-actions a:nth-child(2) {
	border-color: rgba(11, 31, 61, 0.14);
	background: #ffffff;
	color: #0b1f3d;
}

/* View Matches */
.ndt-employer-v2__job-actions a:nth-child(3) {
	background: #0b1f3d;
	color: #ffffff;
}

/* View Applications */
.ndt-employer-v2__job-actions a:nth-child(4) {
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 14px 30px rgba(255, 0, 109, 0.18);
}

/* Export CSV */
.ndt-employer-v2__job-actions a:nth-child(5) {
	grid-column: 1 / -1;
	border-color: rgba(11, 31, 61, 0.14);
	background: #f7f9fc;
	color: #0b1f3d;
}

/* Utility hover states */
.ndt-employer-v2__job-actions a:nth-child(1):hover,
.ndt-employer-v2__job-actions a:nth-child(2):hover,
.ndt-employer-v2__job-actions a:nth-child(5):hover {
	border-color: rgba(255, 0, 109, 0.28);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

/* Dashboard section rhythm */
.ndt-employer-v2__main {
	padding-bottom: 64px;
}

/* Keep anchors landing cleanly after tighter nav */
#employer-overview,
#employer-company,
#employer-actions,
#employer-jobs {
	scroll-margin-top: 96px;
}

/* Tablet guard */
@media (max-width: 1100px) {
	.ndt-employer-v2__job-card {
		grid-template-columns: 1fr;
	}

	.ndt-employer-v2__job-actions {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Mobile guard, deeper mobile pass later */
@media (max-width: 680px) {
	.ndt-employer-v2__hero {
		padding: 28px 0 16px;
	}

	.ndt-employer-v2__hero-card {
		padding: 24px;
	}

	.ndt-employer-v2__hero-card h1 {
		font-size: 38px;
	}

	.ndt-employer-v2__actions-card,
	.ndt-employer-v2__jobs-card,
	.ndt-employer-v2__plan-card,
	.ndt-employer-v2__company-card {
		padding: 24px;
	}

	.ndt-employer-v2__section-heading {
		display: grid;
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.ndt-employer-v2__job-actions {
		grid-template-columns: 1fr;
	}

	.ndt-employer-v2__job-actions a:nth-child(5) {
		grid-column: auto;
	}
}

/* =========================================================
   NDT Jobs - Employer Dashboard UX Upgrade
   Compact command center + true overview + next action
========================================================= */

/* 1. Compact dashboard hero */
.ndt-employer-v2__hero {
	padding: 26px 0 14px;
}

.ndt-employer-v2__hero-card {
	padding: 26px 34px;
	border-radius: 28px;
}

.ndt-employer-v2__hero-card h1 {
	max-width: 760px;
	font-size: clamp(36px, 4.2vw, 56px);
	line-height: 1;
}

.ndt-employer-v2__hero-card p {
	margin-top: 10px;
	max-width: 680px;
	font-size: 16px;
	line-height: 1.5;
}

.ndt-employer-v2__hero-actions .ndt-employer-v2__button {
	min-height: 44px;
	padding: 12px 17px;
}

/* 2. Dashboard nav, not page nav */
.ndt-employer-v2__nav-section {
	padding: 0 0 16px;
}

.ndt-employer-v2__tabs {
	padding: 10px 18px;
	border-radius: 18px;
	gap: 8px 20px;
}

.ndt-employer-v2__tabs a {
	min-height: 32px;
	font-size: 14px;
}

/* Rename visual feel through tighter spacing */
.ndt-employer-v2__dashboard {
	gap: 20px;
}

/* 3 + 9. True overview layout */
.ndt-employer-v2__overview-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(320px, 0.7fr);
	gap: 20px;
	align-items: stretch;
}

.ndt-employer-v2__secondary-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.8fr);
	gap: 20px;
	align-items: stretch;
}

/* Plan card tighter */
.ndt-employer-v2__plan-card {
	padding: 26px;
	border-radius: 28px;
}

.ndt-employer-v2__plan-card::before {
	left: 26px;
	right: 26px;
}

.ndt-employer-v2__card-heading {
	margin-bottom: 18px;
}

.ndt-employer-v2__card-heading h2 {
	font-size: 30px;
}

.ndt-employer-v2__status-pill {
	margin-top: 10px;
}

/* Package metrics tighter */
.ndt-employer-v2__metric-grid--compact {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.ndt-employer-v2__metric {
	padding: 15px;
	border-radius: 16px;
}

.ndt-employer-v2__metric strong {
	font-size: 23px;
}

/* 4. Action-oriented stats */
.ndt-employer-v2__summary-stats {
	display: grid;
	gap: 12px;
}

.ndt-employer-v2__summary-stat {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	grid-template-rows: auto auto;
	column-gap: 14px;
	align-items: center;
	padding: 20px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 24px;
	background: #ffffff;
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.08);
	text-decoration: none;
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.ndt-employer-v2__summary-stat:hover {
	transform: translateY(-2px);
	border-color: rgba(255, 0, 109, 0.24);
	box-shadow: 0 24px 62px rgba(11, 31, 61, 0.12);
}

.ndt-employer-v2__summary-stat strong {
	grid-row: 1 / 3;
	color: #0b1f3d;
	font-size: 42px;
	line-height: 1;
	letter-spacing: -0.05em;
	font-weight: 950;
}

.ndt-employer-v2__summary-stat span {
	color: #0b1f3d;
	font-size: 17px;
	font-weight: 950;
	line-height: 1.1;
}

.ndt-employer-v2__summary-stat small {
	margin-top: 5px;
	color: #ff006d;
	font-size: 13px;
	font-weight: 900;
}

/* 3. Company profile health */
.ndt-employer-v2__company-card--health {
	padding: 26px;
	border-radius: 28px;
}

.ndt-employer-v2__health-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 18px;
}

.ndt-employer-v2__health-list div {
	padding: 14px 15px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 16px;
	background: #f7f9fc;
}

.ndt-employer-v2__health-list span {
	display: block;
	margin-bottom: 6px;
	color: #667085;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-employer-v2__health-list strong {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 950;
}

.ndt-employer-v2__health-list strong.is-complete {
	color: #027a48;
}

.ndt-employer-v2__health-list strong.is-missing {
	color: #b42318;
}

/* 8. Next best action */
.ndt-employer-v2__next-action-card {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 28px;
	border: 1px solid rgba(255, 0, 109, 0.18);
	border-radius: 28px;
	background:
		linear-gradient(135deg, #ffffff 0%, #ffffff 62%, rgba(255, 0, 109, 0.06) 100%);
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-employer-v2__next-action-card h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: 32px;
	line-height: 1.05;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-employer-v2__next-action-card p {
	margin: 14px 0 24px;
	color: #667085;
	font-size: 16px;
	line-height: 1.55;
	font-weight: 600;
}

/* 5. Compress Quick Actions */
.ndt-employer-v2__actions-card {
	padding: 22px 26px;
	border-radius: 26px;
}

.ndt-employer-v2__section-heading {
	margin-bottom: 14px;
}

.ndt-employer-v2__section-heading h2 {
	font-size: 28px;
}

.ndt-employer-v2__actions-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.ndt-employer-v2__action {
	min-height: 82px;
	padding: 16px 18px;
	border-radius: 18px;
}

.ndt-employer-v2__action strong {
	font-size: 16px;
}

.ndt-employer-v2__action span {
	font-size: 13.5px;
	line-height: 1.35;
}

/* 6 + 7. Job cards as table/card hybrid */
.ndt-employer-v2__jobs-card {
	padding: 26px;
	border-radius: 28px;
}

.ndt-employer-v2__jobs-card .ndt-employer-v2__section-heading {
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-employer-v2__job-list {
	gap: 12px;
}

.ndt-employer-v2__job-card {
	grid-template-columns: minmax(0, 1.15fr) 220px 290px;
	gap: 16px;
	padding: 18px;
	border-radius: 20px;
	box-shadow: 0 12px 34px rgba(11, 31, 61, 0.055);
}

.ndt-employer-v2__job-card h3 {
	font-size: 22px;
}

.ndt-employer-v2__job-card p {
	font-size: 14px;
}

.ndt-employer-v2__job-meta {
	margin-top: 12px;
}

.ndt-employer-v2__job-activity {
	gap: 8px;
}

.ndt-employer-v2__job-activity div {
	padding: 14px;
	border-radius: 15px;
}

.ndt-employer-v2__job-activity strong {
	font-size: 26px;
}

.ndt-employer-v2__job-activity span {
	font-size: 10.5px;
}

/* Action hierarchy */
.ndt-employer-v2__job-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.ndt-employer-v2__job-actions a {
	min-height: 38px;
	padding: 10px 12px;
	font-size: 13px;
	box-shadow: none;
}

/* Utility actions quieter */
.ndt-employer-v2__job-actions a:nth-child(1),
.ndt-employer-v2__job-actions a:nth-child(2),
.ndt-employer-v2__job-actions a:nth-child(5) {
	border-color: rgba(11, 31, 61, 0.14);
	background: #ffffff;
	color: #0b1f3d;
}

/* Secondary action */
.ndt-employer-v2__job-actions a:nth-child(3) {
	background: #0b1f3d;
	color: #ffffff;
}

/* Primary action */
.ndt-employer-v2__job-actions a:nth-child(4) {
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 12px 28px rgba(255, 0, 109, 0.18);
}

/* CSV utility full width */
.ndt-employer-v2__job-actions a:nth-child(5) {
	grid-column: 1 / -1;
}

/* Hover for quiet actions */
.ndt-employer-v2__job-actions a:nth-child(1):hover,
.ndt-employer-v2__job-actions a:nth-child(2):hover,
.ndt-employer-v2__job-actions a:nth-child(5):hover {
	border-color: rgba(255, 0, 109, 0.28);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

#employer-overview,
#employer-company,
#employer-actions,
#employer-jobs {
	scroll-margin-top: 94px;
}

@media (max-width: 1100px) {
	.ndt-employer-v2__overview-grid,
	.ndt-employer-v2__secondary-grid,
	.ndt-employer-v2__job-card {
		grid-template-columns: 1fr;
	}

	.ndt-employer-v2__actions-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	.ndt-employer-v2__metric-grid--compact,
	.ndt-employer-v2__actions-grid,
	.ndt-employer-v2__health-list,
	.ndt-employer-v2__job-actions,
	.ndt-employer-v2__job-activity {
		grid-template-columns: 1fr;
	}

	.ndt-employer-v2__summary-stat {
		grid-template-columns: 1fr;
	}

	.ndt-employer-v2__summary-stat strong {
		grid-row: auto;
		margin-bottom: 8px;
	}

	.ndt-employer-v2__job-actions a:nth-child(5) {
		grid-column: auto;
	}
}

/* =========================================================
   NDT Jobs - Employer Applications View V2
   URL: /employer-dashboard/?view=applications&job_id=...
========================================================= */

.ndt-employer-v2__subview {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.ndt-employer-v2__subview .ndt-employer-dashboard {
	max-width: 100%;
	margin: 0;
}

.ndt-employer-applications-v2,
.ndt-employer-applications-v2 * {
	box-sizing: border-box;
}

.ndt-employer-applications-v2 {
	display: grid;
	gap: 18px;
}

.ndt-employer-applications-v2__header,
.ndt-employer-applications-v2__summary,
.ndt-employer-applications-v2__status-bar,
.ndt-employer-applications-v2__empty {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-employer-applications-v2__header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 24px;
	align-items: center;
	padding: 30px;
	position: relative;
	overflow: hidden;
}

.ndt-employer-applications-v2__header::before {
	content: "";
	position: absolute;
	top: 0;
	left: 30px;
	right: 30px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-employer-applications-v2__back {
	display: inline-flex;
	margin-bottom: 18px;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	text-decoration: none;
}

.ndt-employer-applications-v2__back:hover {
	color: #ff006d;
}

.ndt-employer-applications-v2__eyebrow {
	display: inline-flex;
	margin-bottom: 10px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-employer-applications-v2__header h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: clamp(36px, 4.4vw, 56px);
	line-height: 1;
	letter-spacing: -0.055em;
	font-weight: 950;
}

.ndt-employer-applications-v2__header p {
	max-width: 720px;
	margin: 14px 0 0;
	color: #667085;
	font-size: 17px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-employer-applications-v2__header-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.ndt-employer-applications-v2__header-actions a,
.ndt-employer-app-card__profile-button,
.ndt-employer-app-card__status-form button,
.ndt-employer-app-card__resume-box a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 12px 16px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}

.ndt-employer-applications-v2__header-actions a:hover,
.ndt-employer-app-card__profile-button:hover,
.ndt-employer-app-card__status-form button:hover,
.ndt-employer-app-card__resume-box a:hover {
	background: #ff006d;
	color: #ffffff;
}

.ndt-employer-applications-v2__header-actions a:first-child {
	border-color: rgba(11, 31, 61, 0.14);
	background: #ffffff;
	color: #0b1f3d;
}

.ndt-employer-applications-v2__header-actions a:first-child:hover {
	border-color: rgba(255, 0, 109, 0.28);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

/* Summary */

.ndt-employer-applications-v2__summary {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	padding: 18px;
}

.ndt-employer-applications-v2__summary-card {
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 20px;
	background: #f7f9fc;
}

.ndt-employer-applications-v2__summary-card strong {
	display: block;
	color: #0b1f3d;
	font-size: 34px;
	line-height: 1;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-employer-applications-v2__summary-card span {
	display: block;
	margin-top: 8px;
	color: #667085;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

/* Status bar */

.ndt-employer-applications-v2__status-bar {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 16px 18px;
}

.ndt-employer-applications-v2__status-bar span {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 8px 12px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

/* List */

.ndt-employer-applications-v2__list {
	display: grid;
	gap: 16px;
}

.ndt-employer-app-card {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
	overflow: hidden;
}

.ndt-employer-app-card__main {
	padding: 26px;
}

.ndt-employer-app-card__top {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 150px;
	gap: 22px;
	align-items: start;
	padding-bottom: 18px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-employer-app-card__identity {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

.ndt-employer-app-card__identity h3 {
	margin: 0;
	color: #0b1f3d;
	font-size: 28px;
	line-height: 1.08;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.ndt-employer-app-card__status {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 7px 11px;
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

.ndt-employer-app-card__status--new {
	background: rgba(236, 253, 243, 0.95);
	color: #027a48;
}

.ndt-employer-app-card__status--reviewed {
	background: rgba(11, 31, 61, 0.08);
	color: #0b1f3d;
}

.ndt-employer-app-card__status--interested,
.ndt-employer-app-card__status--offer_sent,
.ndt-employer-app-card__status--offer_accepted {
	background: rgba(255, 0, 109, 0.10);
	color: #ff006d;
}

.ndt-employer-app-card__status--hired {
	background: rgba(236, 253, 243, 0.95);
	color: #027a48;
}

.ndt-employer-app-card__status--rejected {
	background: rgba(254, 243, 242, 0.96);
	color: #b42318;
}

.ndt-employer-app-card__subline {
	margin: 10px 0 0;
	color: #344054;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 800;
}

.ndt-employer-app-card__subline span {
	display: inline-flex;
	margin: 0 6px;
	color: #98a2b3;
}

.ndt-employer-app-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
}

.ndt-employer-app-card__meta span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 7px 11px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

.ndt-employer-app-card__score {
	display: grid;
	place-items: center;
	min-height: 132px;
	padding: 18px;
	border-radius: 22px;
	background: #0b1f3d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(11, 31, 61, 0.16);
}

.ndt-employer-app-card__score strong {
	display: block;
	font-size: 42px;
	line-height: 1;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.ndt-employer-app-card__score span {
	display: block;
	margin-top: 8px;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* Review row */

.ndt-employer-app-card__review-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 1.1fr) 170px;
	gap: 12px;
	align-items: stretch;
	margin-top: 18px;
}

.ndt-employer-app-card__resume-box,
.ndt-employer-app-card__status-box {
	padding: 16px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-employer-app-card__resume-box > span,
.ndt-employer-app-card__status-box > span {
	display: block;
	margin-bottom: 10px;
	color: #667085;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.ndt-employer-app-card__resume-box div {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.ndt-employer-app-card__resume-box a {
	min-height: 38px;
	padding: 10px 13px;
	font-size: 13px;
}

.ndt-employer-app-card__resume-box strong {
	color: #667085;
	font-size: 14px;
	font-weight: 800;
}

.ndt-employer-app-card__status-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
}

.ndt-employer-app-card__status-form select {
	width: 100%;
	min-height: 40px;
	padding: 0 12px;
	border: 1px solid rgba(11, 31, 61, 0.16);
	border-radius: 12px;
	background: #ffffff;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 800;
}

.ndt-employer-app-card__status-form button {
	min-height: 40px;
	padding: 10px 14px;
	font-size: 13px;
}

.ndt-employer-app-card__profile-button {
	min-height: 100%;
	border-radius: 18px;
	background: #ff006d;
	box-shadow: 0 14px 32px rgba(255, 0, 109, 0.18);
}

/* Snapshot */

.ndt-employer-app-card__snapshot {
	display: grid;
	gap: 14px;
	margin-top: 18px;
}

.ndt-employer-app-card__snapshot-group {
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 20px;
	background: #ffffff;
}

.ndt-employer-app-card__snapshot-group h4 {
	margin: 0 0 14px;
	color: #0b1f3d;
	font-size: 18px;
	line-height: 1.1;
	letter-spacing: -0.025em;
	font-weight: 950;
}

.ndt-employer-app-card__snapshot-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.ndt-employer-app-card__snapshot-grid div {
	min-width: 0;
	padding: 14px;
	border: 1px solid rgba(11, 31, 61, 0.08);
	border-radius: 16px;
	background: #f7f9fc;
}

.ndt-employer-app-card__snapshot-grid span {
	display: block;
	margin-bottom: 6px;
	color: #667085;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-employer-app-card__snapshot-grid strong {
	display: block;
	color: #0b1f3d;
	font-size: 14px;
	line-height: 1.45;
	font-weight: 800;
	overflow-wrap: anywhere;
}

/* Empty */

.ndt-employer-applications-v2__empty {
	padding: 28px;
}

.ndt-employer-applications-v2__empty h3 {
	margin: 0 0 8px;
	color: #0b1f3d;
	font-size: 26px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-employer-applications-v2__empty p {
	margin: 0;
	color: #667085;
	font-size: 16px;
	line-height: 1.55;
	font-weight: 600;
}

/* Responsive guards */

@media (max-width: 1100px) {
	.ndt-employer-applications-v2__header,
	.ndt-employer-app-card__top,
	.ndt-employer-app-card__review-row {
		grid-template-columns: 1fr;
	}

	.ndt-employer-applications-v2__header-actions {
		justify-content: flex-start;
	}

	.ndt-employer-app-card__score {
		place-items: start;
		min-height: auto;
	}

	.ndt-employer-app-card__profile-button {
		min-height: 48px;
	}
}

@media (max-width: 780px) {
	.ndt-employer-applications-v2__summary,
	.ndt-employer-app-card__snapshot-grid,
	.ndt-employer-app-card__status-form {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.ndt-employer-applications-v2__header,
	.ndt-employer-app-card__main,
	.ndt-employer-applications-v2__summary,
	.ndt-employer-applications-v2__status-bar,
	.ndt-employer-applications-v2__empty {
		padding: 22px;
		border-radius: 24px;
	}

	.ndt-employer-applications-v2__header::before {
		left: 22px;
		right: 22px;
	}

	.ndt-employer-applications-v2__header h2 {
		font-size: 36px;
	}

	.ndt-employer-app-card {
		border-radius: 24px;
	}

	.ndt-employer-app-card__identity h3 {
		font-size: 24px;
	}

	.ndt-employer-applications-v2__header-actions a,
	.ndt-employer-app-card__profile-button,
	.ndt-employer-app-card__status-form button,
	.ndt-employer-app-card__resume-box a {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Employer Applications Review V3
   URL: /employer-dashboard/?view=applications&job_id=...
========================================================= */

.ndt-employer-v2__subview {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.ndt-employer-v2__subview .ndt-employer-dashboard {
	max-width: 100%;
	margin: 0;
}

.ndt-app-review,
.ndt-app-review * {
	box-sizing: border-box;
}

.ndt-app-review {
	display: grid;
	gap: 16px;
}

/* Header */

.ndt-app-review__header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 22px;
	align-items: start;
	padding: 26px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
	position: relative;
	overflow: hidden;
}

.ndt-app-review__header::before {
	content: "";
	position: absolute;
	top: 0;
	left: 26px;
	right: 26px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-app-review__back {
	display: inline-flex;
	margin-bottom: 14px;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	text-decoration: none;
}

.ndt-app-review__back:hover {
	color: #ff006d;
}

.ndt-app-review__eyebrow {
	display: inline-flex;
	margin-bottom: 8px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-app-review__header h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: clamp(34px, 4vw, 52px);
	line-height: 1;
	letter-spacing: -0.055em;
	font-weight: 950;
}

.ndt-app-review__header p {
	max-width: 680px;
	margin: 12px 0 0;
	color: #667085;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 600;
}

.ndt-app-review__header-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
	position: relative;
	z-index: 1;
}

.ndt-app-review__ghost-button,
.ndt-app-review__dark-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 12px 16px;
	border: 1px solid rgba(11, 31, 61, 0.14);
	border-radius: 999px;
	background: #ffffff;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

.ndt-app-review__dark-button {
	border-color: #0b1f3d;
	background: #0b1f3d;
	color: #ffffff;
}

.ndt-app-review__ghost-button:hover {
	border-color: rgba(255, 0, 109, 0.28);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

.ndt-app-review__dark-button:hover {
	border-color: #ff006d;
	background: #ff006d;
	color: #ffffff;
}

/* Compact metric strip */

.ndt-app-review__metrics {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
	margin-top: 4px;
	position: relative;
	z-index: 1;
}

.ndt-app-review__metrics div {
	padding: 14px 16px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-app-review__metrics strong {
	display: block;
	color: #0b1f3d;
	font-size: 28px;
	line-height: 1;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.ndt-app-review__metrics span {
	display: block;
	margin-top: 7px;
	color: #667085;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

/* Status strip */

.ndt-app-review__status-strip {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 12px 14px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.86);
	box-shadow: 0 14px 42px rgba(11, 31, 61, 0.07);
}

.ndt-app-review__status-strip span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 7px 11px;
	border: 1px solid rgba(11, 31, 61, 0.09);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

/* List */

.ndt-app-review__list {
	display: grid;
	gap: 16px;
}

/* Application card */

.ndt-app-card {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
	overflow: hidden;
}

.ndt-app-card__summary {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 180px;
	gap: 22px;
	align-items: stretch;
	padding: 24px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-app-card__identity {
	min-width: 0;
}

.ndt-app-card__name-row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

.ndt-app-card__name-row h3 {
	margin: 0;
	color: #0b1f3d;
	font-size: 30px;
	line-height: 1.05;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-app-card__identity p {
	margin: 10px 0 0;
	color: #344054;
	font-size: 16px;
	line-height: 1.45;
	font-weight: 800;
}

.ndt-app-card__identity p span {
	display: inline-flex;
	margin: 0 6px;
	color: #98a2b3;
}

.ndt-app-card__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
}

.ndt-app-card__chips span,
.ndt-app-card__status {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 7px 11px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

.ndt-app-card__status {
	border: 0;
}

.ndt-app-card__status--new {
	background: rgba(236, 253, 243, 0.95);
	color: #027a48;
}

.ndt-app-card__status--reviewed {
	background: rgba(11, 31, 61, 0.08);
	color: #0b1f3d;
}

.ndt-app-card__status--interested,
.ndt-app-card__status--offer_sent,
.ndt-app-card__status--offer_accepted {
	background: rgba(255, 0, 109, 0.10);
	color: #ff006d;
}

.ndt-app-card__status--hired {
	background: rgba(236, 253, 243, 0.95);
	color: #027a48;
}

.ndt-app-card__status--rejected {
	background: rgba(254, 243, 242, 0.96);
	color: #b42318;
}

/* Decision panel */

.ndt-app-card__decision-panel {
	display: grid;
	grid-template-rows: 1fr auto;
	gap: 10px;
}

.ndt-app-card__match {
	display: grid;
	place-items: center;
	min-height: 116px;
	padding: 16px;
	border-radius: 22px;
	background: #0b1f3d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(11, 31, 61, 0.16);
	text-align: center;
}

.ndt-app-card__match strong {
	display: block;
	font-size: 38px;
	line-height: 1;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.ndt-app-card__match span {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-app-card__primary-action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 16px;
	border-radius: 999px;
	background: #ff006d;
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	box-shadow: 0 14px 32px rgba(255, 0, 109, 0.18);
}

.ndt-app-card__primary-action:hover {
	background: #0b1f3d;
	color: #ffffff;
}

/* Workflow row */

.ndt-app-card__workflow {
	display: grid;
	grid-template-columns: 1fr 1.35fr 1fr;
	gap: 12px;
	padding: 18px 24px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
	background: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%);
}

.ndt-app-card__workflow-box {
	min-width: 0;
	padding: 16px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-app-card__workflow-box > span {
	display: block;
	margin-bottom: 10px;
	color: #667085;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.ndt-app-card__workflow-box strong,
.ndt-app-card__workflow-box small {
	display: block;
	color: #0b1f3d;
	font-size: 14px;
	line-height: 1.45;
	font-weight: 850;
	overflow-wrap: anywhere;
}

.ndt-app-card__workflow-box small {
	margin-top: 5px;
	color: #667085;
}

.ndt-app-card__resume-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.ndt-app-card__resume-actions a,
.ndt-app-card__status-form button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 10px 13px;
	border: 0;
	border-radius: 999px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}

.ndt-app-card__resume-actions a:hover,
.ndt-app-card__status-form button:hover {
	background: #ff006d;
	color: #ffffff;
}

.ndt-app-card__status-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
}

.ndt-app-card__status-form select {
	width: 100%;
	min-height: 38px;
	padding: 0 12px;
	border: 1px solid rgba(11, 31, 61, 0.16);
	border-radius: 12px;
	background: #ffffff;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 850;
}

/* Highlights */

.ndt-app-card__highlights {
	display: grid;
	gap: 12px;
	padding: 18px 24px 24px;
}

.ndt-app-card__highlight-block {
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 20px;
	background: #ffffff;
}

.ndt-app-card__highlight-block--secondary {
	background: #fbfcfe;
}

.ndt-app-card__highlight-block h4 {
	margin: 0 0 14px;
	color: #0b1f3d;
	font-size: 18px;
	line-height: 1.1;
	letter-spacing: -0.025em;
	font-weight: 950;
}

.ndt-app-card__highlight-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.ndt-app-card__highlight-block--secondary .ndt-app-card__highlight-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ndt-app-card__highlight-grid div {
	min-width: 0;
	padding: 13px;
	border: 1px solid rgba(11, 31, 61, 0.08);
	border-radius: 16px;
	background: #f7f9fc;
}

.ndt-app-card__highlight-grid span {
	display: block;
	margin-bottom: 6px;
	color: #667085;
	font-size: 10.5px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-app-card__highlight-grid strong {
	display: block;
	color: #0b1f3d;
	font-size: 13.5px;
	line-height: 1.4;
	font-weight: 850;
	overflow-wrap: anywhere;
}

/* Empty */

.ndt-app-review__empty {
	padding: 28px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-app-review__empty h3 {
	margin: 0 0 8px;
	color: #0b1f3d;
	font-size: 26px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-app-review__empty p {
	margin: 0;
	color: #667085;
	font-size: 16px;
	line-height: 1.55;
	font-weight: 600;
}

/* Responsive guards */

@media (max-width: 1100px) {
	.ndt-app-review__header,
	.ndt-app-card__summary,
	.ndt-app-card__workflow {
		grid-template-columns: 1fr;
	}

	.ndt-app-review__header-actions {
		justify-content: flex-start;
	}

	.ndt-app-card__decision-panel {
		grid-template-rows: auto;
	}

	.ndt-app-card__match {
		min-height: auto;
		place-items: start;
		text-align: left;
	}
}

@media (max-width: 900px) {
	.ndt-app-review__metrics,
	.ndt-app-card__highlight-grid,
	.ndt-app-card__highlight-block--secondary .ndt-app-card__highlight-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	.ndt-app-review__header,
	.ndt-app-review__status-strip,
	.ndt-app-review__empty {
		padding: 22px;
		border-radius: 24px;
	}

	.ndt-app-review__header::before {
		left: 22px;
		right: 22px;
	}

	.ndt-app-review__header h2 {
		font-size: 34px;
	}

	.ndt-app-card {
		border-radius: 24px;
	}

	.ndt-app-card__summary,
	.ndt-app-card__workflow,
	.ndt-app-card__highlights {
		padding-left: 20px;
		padding-right: 20px;
	}

	.ndt-app-card__name-row h3 {
		font-size: 25px;
	}

	.ndt-app-review__metrics,
	.ndt-app-card__highlight-grid,
	.ndt-app-card__highlight-block--secondary .ndt-app-card__highlight-grid,
	.ndt-app-card__status-form {
		grid-template-columns: 1fr;
	}

	.ndt-app-review__ghost-button,
	.ndt-app-review__dark-button,
	.ndt-app-card__primary-action,
	.ndt-app-card__resume-actions a,
	.ndt-app-card__status-form button {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Employer Dashboard Subview Focus
   Removes global dashboard feel from applications/matches views
========================================================= */

.ndt-employer-v2__subview {
	margin-top: 28px;
}

@media (max-width: 680px) {
	.ndt-employer-v2__subview {
		margin-top: 20px;
	}
}

/* =========================================================
   NDT Jobs - Match Score Accent
   Gold/amber differentiates match intelligence from normal CTAs
========================================================= */

.ndt-app-card__match {
	background:
		linear-gradient(135deg, #ffcf5a 0%, #f5a524 100%);
	color: #0b1f3d;
	box-shadow: 0 18px 42px rgba(245, 165, 36, 0.24);
}

.ndt-app-card__match strong {
	color: #f8f8ff;
}

.ndt-app-card__match span {
	color: #f8f8ff;
}

/* =========================================================
   NDT Jobs - Applications Pipeline Strip
   Combines application counts + avg match into one row
========================================================= */

.ndt-app-review__metrics {
	display: none !important;
}

.ndt-app-review__status-strip {
	margin-top: -2px;
	align-items: center;
}

.ndt-app-review__status-strip span {
	gap: 5px;
}

.ndt-app-review__status-strip span strong {
	color: #0b1f3d;
	font-weight: 950;
}

.ndt-app-review__status-strip-match {
	margin-left: auto;
	border-color: rgba(245, 165, 36, 0.38) !important;
	background: #fff7df !important;
	color: #0b1f3d !important;
	box-shadow: 0 10px 24px rgba(245, 165, 36, 0.10);
}

.ndt-app-review__status-strip-match strong {
	color: #0b1f3d !important;
}

@media (max-width: 900px) {
	.ndt-app-review__status-strip-match {
		margin-left: 0;
	}
}

/* =========================================================
   NDT Jobs - Employer Dashboard V3 Simplified
   Command bar + hiring overview + jobs
========================================================= */

.ndt-employer-v3 .ndt-employer-v2__main {
	padding: 34px 0 76px;
}

.ndt-employer-v3__dashboard {
	display: grid;
	gap: 22px;
}

.ndt-employer-v3__command-bar,
.ndt-employer-v3__plan,
.ndt-employer-v3__next-action,
.ndt-employer-v3__company {
	border: 1px solid rgba(11, 31, 61, 0.12);
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-employer-v3__command-bar {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 24px;
	align-items: center;
	padding: 26px 30px;
	border-radius: 30px;
	position: relative;
	overflow: hidden;
}

.ndt-employer-v3__command-bar::before,
.ndt-employer-v3__plan::before {
	content: "";
	position: absolute;
	top: 0;
	left: 30px;
	right: 30px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-employer-v3__eyebrow {
	display: inline-flex;
	margin-bottom: 8px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-employer-v3__command-bar h1 {
	margin: 0;
	color: #0b1f3d;
	font-size: clamp(34px, 4vw, 54px);
	line-height: 1;
	letter-spacing: -0.055em;
	font-weight: 950;
}

.ndt-employer-v3__command-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
}

.ndt-employer-v3__command-stats span {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 8px 12px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 13px;
	font-weight: 900;
}

.ndt-employer-v3__command-actions,
.ndt-employer-v3__company-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.ndt-employer-v3__button,
.ndt-employer-v3__company-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 13px 18px;
	border: 1px solid rgba(11, 31, 61, 0.14);
	border-radius: 999px;
	background: #ffffff;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	text-align: center;
}

.ndt-employer-v3__button--primary {
	border-color: #ff006d;
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.20);
}

.ndt-employer-v3__button:hover,
.ndt-employer-v3__company-actions a:hover {
	border-color: rgba(255, 0, 109, 0.30);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

.ndt-employer-v3__button--primary:hover {
	border-color: #0b1f3d;
	background: #0b1f3d;
	color: #ffffff;
}

/* Overview */

.ndt-employer-v3__overview {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.8fr);
	grid-template-areas:
		"plan next"
		"plan company";
	gap: 22px;
	align-items: stretch;
}

.ndt-employer-v3__plan {
	grid-area: plan;
	padding: 28px;
	border-radius: 30px;
	position: relative;
	overflow: hidden;
}

.ndt-employer-v3__next-action {
	grid-area: next;
	padding: 28px;
	border-radius: 30px;
	border-color: rgba(255, 0, 109, 0.18);
	background:
		linear-gradient(135deg, #ffffff 0%, #ffffff 64%, rgba(255, 0, 109, 0.06) 100%);
}

.ndt-employer-v3__company {
	grid-area: company;
	padding: 24px;
	border-radius: 30px;
}

.ndt-employer-v3__section-head {
	display: flex;
	justify-content: space-between;
	gap: 18px;
	align-items: flex-start;
	margin-bottom: 22px;
}

.ndt-employer-v3__section-head h2,
.ndt-employer-v3__next-action h2,
.ndt-employer-v3__company h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: 32px;
	line-height: 1.05;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-employer-v3__status-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 8px 13px;
	border-radius: 999px;
	background: rgba(255, 0, 109, 0.10);
	color: #ff006d;
	font-size: 13px;
	font-weight: 900;
	white-space: nowrap;
}

.ndt-employer-v3__overview-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.ndt-employer-v3__overview-grid div,
.ndt-employer-v3__plan-footer div,
.ndt-employer-v3__health div {
	min-width: 0;
	padding: 16px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-employer-v3__overview-grid span,
.ndt-employer-v3__plan-footer span,
.ndt-employer-v3__health span {
	display: block;
	margin-bottom: 8px;
	color: #667085;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-employer-v3__overview-grid strong {
	display: block;
	color: #0b1f3d;
	font-size: 30px;
	line-height: 1;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-employer-v3__plan-footer {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-employer-v3__plan-footer strong,
.ndt-employer-v3__health strong {
	display: block;
	color: #0b1f3d;
	font-size: 18px;
	line-height: 1.2;
	font-weight: 950;
}

.ndt-employer-v3__next-action p {
	margin: 14px 0 22px;
	color: #667085;
	font-size: 16px;
	line-height: 1.55;
	font-weight: 600;
}

.ndt-employer-v3__next-action .ndt-employer-v3__button {
	width: 100%;
}

/* Company compact card */

.ndt-employer-v3__company-top {
	display: grid;
	grid-template-columns: 66px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
	margin-bottom: 16px;
}

.ndt-employer-v3__company-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 66px;
	height: 66px;
	border-radius: 20px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 28px;
	font-weight: 950;
	overflow: hidden;
	box-shadow: 0 14px 34px rgba(11, 31, 61, 0.18);
}

.ndt-employer-v3__company-logo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ndt-employer-v3__health {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.ndt-employer-v3__health strong.is-complete {
	color: #027a48;
}

.ndt-employer-v3__health strong.is-missing {
	color: #b42318;
}

.ndt-employer-v3__company-actions {
	justify-content: flex-start;
	margin-top: 16px;
}

.ndt-employer-v3__company-actions a {
	min-height: 40px;
	padding: 11px 14px;
	font-size: 13px;
}

/* Jobs stay as the primary working area */

.ndt-employer-v3__jobs {
	margin-top: 0;
}

.ndt-employer-v3__jobs .ndt-employer-v2__section-heading {
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
}

/* Safety: hide old duplicate modules if any old markup remains */
.ndt-employer-v3 .ndt-employer-v2__nav-section,
.ndt-employer-v3 .ndt-employer-v2__stats-row,
.ndt-employer-v3 .ndt-employer-v2__actions-card,
.ndt-employer-v3 .ndt-employer-v2__hero {
	display: none !important;
}

/* Responsive guards */

@media (max-width: 1100px) {
	.ndt-employer-v3__overview {
		grid-template-columns: 1fr;
		grid-template-areas:
			"plan"
			"next"
			"company";
	}

	.ndt-employer-v3__overview-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 780px) {
	.ndt-employer-v3__command-bar {
		grid-template-columns: 1fr;
	}

	.ndt-employer-v3__command-actions {
		justify-content: flex-start;
	}

	.ndt-employer-v3__plan-footer,
	.ndt-employer-v3__health {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.ndt-employer-v3 .ndt-employer-v2__main {
		padding-top: 24px;
	}

	.ndt-employer-v3__command-bar,
	.ndt-employer-v3__plan,
	.ndt-employer-v3__next-action,
	.ndt-employer-v3__company {
		padding: 22px;
		border-radius: 24px;
	}

	.ndt-employer-v3__command-bar::before,
	.ndt-employer-v3__plan::before {
		left: 22px;
		right: 22px;
	}

	.ndt-employer-v3__command-bar h1 {
		font-size: 36px;
	}

	.ndt-employer-v3__overview-grid,
	.ndt-employer-v3__company-top {
		grid-template-columns: 1fr;
	}

	.ndt-employer-v3__button,
	.ndt-employer-v3__company-actions,
	.ndt-employer-v3__company-actions a {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Employer Dashboard V3 Layout Swap
   Next Best Action becomes the primary panel
========================================================= */

.ndt-employer-v3__overview {
	grid-template-columns: minmax(360px, 0.78fr) minmax(0, 1.22fr);
	grid-template-areas:
		"next plan"
		"next company";
}

/* Make Next Best Action feel like the main module */
.ndt-employer-v3__next-action {
	min-height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 34px;
}

.ndt-employer-v3__next-action h2 {
	font-size: clamp(34px, 3.3vw, 48px);
	line-height: 1.02;
}

.ndt-employer-v3__next-action p {
	max-width: 520px;
	font-size: 17px;
}

.ndt-employer-v3__next-action .ndt-employer-v3__button {
	width: auto;
	align-self: flex-start;
	min-width: 240px;
}

/* Make Hiring Overview a little more compact now that it is stacked */
.ndt-employer-v3__plan {
	padding: 24px;
}

.ndt-employer-v3__section-head {
	margin-bottom: 16px;
}

.ndt-employer-v3__overview-grid {
	gap: 10px;
}

.ndt-employer-v3__overview-grid div,
.ndt-employer-v3__plan-footer div {
	padding: 14px;
}

.ndt-employer-v3__overview-grid strong {
	font-size: 26px;
}

.ndt-employer-v3__plan-footer {
	margin-top: 14px;
	padding-top: 14px;
}

/* Make company profile feel like a supporting maintenance card */
.ndt-employer-v3__company {
	padding: 22px 24px;
}

.ndt-employer-v3__company-top {
	margin-bottom: 14px;
}

.ndt-employer-v3__health div {
	padding: 13px;
}

/* Responsive: stack in priority order */
@media (max-width: 1100px) {
	.ndt-employer-v3__overview {
		grid-template-columns: 1fr;
		grid-template-areas:
			"next"
			"plan"
			"company";
	}

	.ndt-employer-v3__next-action {
		min-height: auto;
	}

	.ndt-employer-v3__next-action .ndt-employer-v3__button {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Employer Dashboard V3 Layout Swap 2
   Hiring Overview + Company stacked left
   Next Best Action large panel right
========================================================= */

.ndt-employer-v3__overview {
	grid-template-columns: minmax(0, 1.22fr) minmax(360px, 0.78fr);
	grid-template-areas:
		"plan next"
		"company next";
}

/* Keep Next Best Action as the larger feature panel on the right */
.ndt-employer-v3__next-action {
	min-height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 34px;
}

.ndt-employer-v3__next-action h2 {
	font-size: clamp(34px, 3.3vw, 48px);
	line-height: 1.02;
}

.ndt-employer-v3__next-action p {
	max-width: 520px;
	font-size: 17px;
}

.ndt-employer-v3__next-action .ndt-employer-v3__button {
	width: auto;
	align-self: flex-start;
	min-width: 240px;
}

/* Left-side stacked cards */
.ndt-employer-v3__plan {
	padding: 24px;
}

.ndt-employer-v3__company {
	padding: 22px 24px;
}

/* Responsive: stack by priority */
@media (max-width: 1100px) {
	.ndt-employer-v3__overview {
		grid-template-columns: 1fr;
		grid-template-areas:
			"next"
			"plan"
			"company";
	}

	.ndt-employer-v3__next-action {
		min-height: auto;
	}

	.ndt-employer-v3__next-action .ndt-employer-v3__button {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Employer Dashboard Jobs Limit + All Jobs Link
========================================================= */

.ndt-employer-v3__jobs-heading {
	align-items: center;
}

.ndt-employer-v3__jobs-heading p {
	max-width: 620px;
	margin: 8px 0 0;
	color: #667085;
	font-size: 15px;
	line-height: 1.5;
	font-weight: 600;
}

.ndt-employer-v3__jobs-heading-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
	align-items: center;
}

.ndt-employer-v3__jobs-heading-actions .ndt-employer-v2__mini-button {
	white-space: nowrap;
}

@media (max-width: 780px) {
	.ndt-employer-v3__jobs-heading {
		align-items: start;
	}

	.ndt-employer-v3__jobs-heading-actions {
		width: 100%;
		justify-content: flex-start;
	}

	.ndt-employer-v3__jobs-heading-actions .ndt-employer-v2__mini-button {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Employer Candidate Matches View V2
   URL: /employer-dashboard/?view=matches&job_id=...
========================================================= */

.ndt-match-review,
.ndt-match-review * {
	box-sizing: border-box;
}

.ndt-match-review {
	display: grid;
	gap: 16px;
}

.ndt-match-review__header,
.ndt-match-review__pipeline,
.ndt-match-review__empty {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-match-review__header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 22px;
	align-items: start;
	padding: 26px;
	position: relative;
	overflow: hidden;
}

.ndt-match-review__header::before {
	content: "";
	position: absolute;
	top: 0;
	left: 26px;
	right: 26px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-match-review__back {
	display: inline-flex;
	margin-bottom: 14px;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	text-decoration: none;
}

.ndt-match-review__back:hover {
	color: #ff006d;
}

.ndt-match-review__eyebrow {
	display: inline-flex;
	margin-bottom: 8px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-match-review__header h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: clamp(34px, 4vw, 52px);
	line-height: 1;
	letter-spacing: -0.055em;
	font-weight: 950;
}

.ndt-match-review__header p {
	max-width: 720px;
	margin: 12px 0 0;
	color: #667085;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 600;
}

.ndt-match-review__header-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
	position: relative;
	z-index: 1;
}

.ndt-match-review__ghost-button,
.ndt-match-review__dark-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 12px 16px;
	border: 1px solid rgba(11, 31, 61, 0.14);
	border-radius: 999px;
	background: #ffffff;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

.ndt-match-review__dark-button {
	border-color: #0b1f3d;
	background: #0b1f3d;
	color: #ffffff;
}

.ndt-match-review__ghost-button:hover {
	border-color: rgba(255, 0, 109, 0.28);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

.ndt-match-review__dark-button:hover {
	border-color: #ff006d;
	background: #ff006d;
	color: #ffffff;
}

/* Pipeline strip */

.ndt-match-review__pipeline {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	padding: 12px 14px;
	background: rgba(255, 255, 255, 0.86);
	box-shadow: 0 14px 42px rgba(11, 31, 61, 0.07);
}

.ndt-match-review__pipeline span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	min-height: 30px;
	padding: 7px 11px;
	border: 1px solid rgba(11, 31, 61, 0.09);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

.ndt-match-review__pipeline strong {
	color: #0b1f3d;
	font-weight: 950;
}

.ndt-match-review__pipeline-score {
	margin-left: auto;
	border-color: rgba(245, 165, 36, 0.38) !important;
	background: #fff7df !important;
	box-shadow: 0 10px 24px rgba(245, 165, 36, 0.10);
}

/* List */

.ndt-match-review__list {
	display: grid;
	gap: 16px;
}

.ndt-match-card {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
	overflow: hidden;
}

.ndt-match-card__summary {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 180px;
	gap: 22px;
	align-items: stretch;
	padding: 24px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-match-card__identity {
	min-width: 0;
}

.ndt-match-card__identity h3 {
	margin: 0;
	color: #0b1f3d;
	font-size: 30px;
	line-height: 1.05;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-match-card__identity p {
	margin: 10px 0 0;
	color: #344054;
	font-size: 16px;
	line-height: 1.45;
	font-weight: 800;
}

.ndt-match-card__identity p span {
	display: inline-flex;
	margin: 0 6px;
	color: #98a2b3;
}

.ndt-match-card__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
}

.ndt-match-card__chips span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 7px 11px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

/* Match score */

.ndt-match-card__decision-panel {
	display: grid;
	grid-template-rows: 1fr auto;
	gap: 10px;
}

.ndt-match-card__match {
	display: grid;
	place-items: center;
	min-height: 116px;
	padding: 16px;
	border: 1px solid rgba(245, 165, 36, 0.36);
	border-radius: 22px;
	background: linear-gradient(135deg, #ffcf5a 0%, #f5a524 100%);
	color: #0b1f3d;
	box-shadow: 0 18px 42px rgba(245, 165, 36, 0.24);
	text-align: center;
}

.ndt-match-card__match strong {
	display: block;
	color: #0b1f3d;
	font-size: 38px;
	line-height: 1;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.ndt-match-card__match span {
	display: block;
	margin-top: 8px;
	color: #0b1f3d;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-match-card__primary-action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 16px;
	border-radius: 999px;
	background: #ff006d;
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	box-shadow: 0 14px 32px rgba(255, 0, 109, 0.18);
}

.ndt-match-card__primary-action:hover {
	background: #0b1f3d;
	color: #ffffff;
}

/* Fit blocks */

.ndt-match-card__fit {
	display: grid;
	gap: 12px;
	padding: 18px 24px 24px;
}

.ndt-match-card__fit-block {
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 20px;
	background: #ffffff;
}

.ndt-match-card__fit-block--secondary {
	background: #fbfcfe;
}

.ndt-match-card__fit-block h4 {
	margin: 0 0 14px;
	color: #0b1f3d;
	font-size: 18px;
	line-height: 1.1;
	letter-spacing: -0.025em;
	font-weight: 950;
}

.ndt-match-card__fit-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.ndt-match-card__fit-block--secondary .ndt-match-card__fit-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ndt-match-card__fit-grid div {
	min-width: 0;
	padding: 13px;
	border: 1px solid rgba(11, 31, 61, 0.08);
	border-radius: 16px;
	background: #f7f9fc;
}

.ndt-match-card__fit-grid span {
	display: block;
	margin-bottom: 6px;
	color: #667085;
	font-size: 10.5px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-match-card__fit-grid strong {
	display: block;
	color: #0b1f3d;
	font-size: 13.5px;
	line-height: 1.4;
	font-weight: 850;
	overflow-wrap: anywhere;
}

/* Empty */

.ndt-match-review__empty {
	padding: 28px;
}

.ndt-match-review__empty h3 {
	margin: 0 0 8px;
	color: #0b1f3d;
	font-size: 26px;
	line-height: 1.1;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-match-review__empty p {
	margin: 0;
	color: #667085;
	font-size: 16px;
	line-height: 1.55;
	font-weight: 600;
}

/* Responsive guards */

@media (max-width: 1100px) {
	.ndt-match-review__header,
	.ndt-match-card__summary {
		grid-template-columns: 1fr;
	}

	.ndt-match-review__header-actions {
		justify-content: flex-start;
	}

	.ndt-match-card__decision-panel {
		grid-template-rows: auto;
	}

	.ndt-match-card__match {
		min-height: auto;
		place-items: start;
		text-align: left;
	}
}

@media (max-width: 900px) {
	.ndt-match-card__fit-grid,
	.ndt-match-card__fit-block--secondary .ndt-match-card__fit-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ndt-match-review__pipeline-score {
		margin-left: 0;
	}
}

@media (max-width: 680px) {
	.ndt-match-review__header,
	.ndt-match-review__pipeline,
	.ndt-match-review__empty {
		padding: 22px;
		border-radius: 24px;
	}

	.ndt-match-review__header::before {
		left: 22px;
		right: 22px;
	}

	.ndt-match-review__header h2 {
		font-size: 34px;
	}

	.ndt-match-card {
		border-radius: 24px;
	}

	.ndt-match-card__summary,
	.ndt-match-card__fit {
		padding-left: 20px;
		padding-right: 20px;
	}

	.ndt-match-card__identity h3 {
		font-size: 25px;
	}

	.ndt-match-card__fit-grid,
	.ndt-match-card__fit-block--secondary .ndt-match-card__fit-grid {
		grid-template-columns: 1fr;
	}

	.ndt-match-review__ghost-button,
	.ndt-match-review__dark-button,
	.ndt-match-card__primary-action {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Employer Candidate Dossier View
   URL: /employer-dashboard/?view=candidate&job_id=...&candidate_id=...
========================================================= */

.ndt-candidate-dossier,
.ndt-candidate-dossier * {
	box-sizing: border-box;
}

.ndt-candidate-dossier {
	display: grid;
	gap: 16px;
}

/* Shared cards */

.ndt-candidate-dossier__hero,
.ndt-candidate-dossier__snapshot,
.ndt-candidate-dossier__actions,
.ndt-candidate-dossier__fit-summary,
.ndt-candidate-dossier__qualification-block,
.ndt-candidate-dossier__certs {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

/* Hero */

.ndt-candidate-dossier__hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 190px;
	gap: 24px;
	align-items: stretch;
	padding: 26px;
	position: relative;
	overflow: hidden;
}

.ndt-candidate-dossier__hero::before {
	content: "";
	position: absolute;
	top: 0;
	left: 26px;
	right: 26px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-candidate-dossier__crumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 16px;
	position: relative;
	z-index: 1;
}

.ndt-candidate-dossier__crumbs a {
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 900;
	text-decoration: none;
}

.ndt-candidate-dossier__crumbs a:hover {
	color: #ff006d;
}

.ndt-candidate-dossier__eyebrow {
	display: inline-flex;
	margin-bottom: 8px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-candidate-dossier__hero h2 {
	margin: 0;
	color: #0b1f3d;
	font-size: clamp(38px, 4.6vw, 60px);
	line-height: 1;
	letter-spacing: -0.058em;
	font-weight: 950;
}

.ndt-candidate-dossier__hero-main > p {
	margin: 12px 0 0;
	color: #344054;
	font-size: 17px;
	line-height: 1.5;
	font-weight: 800;
}

.ndt-candidate-dossier__hero-main > p span {
	display: inline-flex;
	margin: 0 7px;
	color: #98a2b3;
}

.ndt-candidate-dossier__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 16px;
}

.ndt-candidate-dossier__chips span {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 8px 12px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

/* Score */

.ndt-candidate-dossier__score-panel {
	display: grid;
	grid-template-rows: 1fr auto;
	gap: 10px;
	position: relative;
	z-index: 1;
}

.ndt-candidate-dossier__score {
	display: grid;
	place-items: center;
	min-height: 132px;
	padding: 18px;
	border: 1px solid rgba(245, 165, 36, 0.36);
	border-radius: 24px;
	background: linear-gradient(135deg, #ffcf5a 0%, #f5a524 100%);
	color: #0b1f3d;
	box-shadow: 0 18px 42px rgba(245, 165, 36, 0.24);
	text-align: center;
}

.ndt-candidate-dossier__score strong {
	display: block;
	color: #0b1f3d;
	font-size: 42px;
	line-height: 1;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.ndt-candidate-dossier__score span {
	display: block;
	margin-top: 8px;
	color: #0b1f3d;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-candidate-dossier__score-panel a,
.ndt-candidate-dossier__action-list a,
.ndt-candidate-dossier__cert-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 12px 16px;
	border-radius: 999px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

.ndt-candidate-dossier__score-panel a:hover,
.ndt-candidate-dossier__action-list a:hover,
.ndt-candidate-dossier__cert-actions a:hover {
	background: #ff006d;
	color: #ffffff;
}

/* Top grid */

.ndt-candidate-dossier__top-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.65fr);
	gap: 16px;
}

.ndt-candidate-dossier__snapshot,
.ndt-candidate-dossier__actions,
.ndt-candidate-dossier__fit-summary,
.ndt-candidate-dossier__qualification-block,
.ndt-candidate-dossier__certs {
	padding: 24px;
}

.ndt-candidate-dossier__section-head h3,
.ndt-candidate-dossier__actions h3,
.ndt-candidate-dossier__qualification-block h3,
.ndt-candidate-dossier__certs h3 {
	margin: 0;
	color: #0b1f3d;
	font-size: 26px;
	line-height: 1.08;
	letter-spacing: -0.04em;
	font-weight: 950;
}

.ndt-candidate-dossier__field-grid,
.ndt-candidate-dossier__fit-summary-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 18px;
}

.ndt-candidate-dossier__field-grid div,
.ndt-candidate-dossier__fit-summary-grid div {
	min-width: 0;
	padding: 15px;
	border: 1px solid rgba(11, 31, 61, 0.08);
	border-radius: 16px;
	background: #f7f9fc;
}

.ndt-candidate-dossier__field-grid span,
.ndt-candidate-dossier__fit-summary-grid span,
.ndt-candidate-dossier__job-context span,
.ndt-candidate-dossier__cert-label {
	display: block;
	margin-bottom: 7px;
	color: #667085;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-candidate-dossier__field-grid strong,
.ndt-candidate-dossier__fit-summary-grid strong {
	display: block;
	color: #0b1f3d;
	font-size: 14px;
	line-height: 1.45;
	font-weight: 850;
	overflow-wrap: anywhere;
}

.ndt-candidate-dossier__field-grid a {
	color: #ff006d;
	font-weight: 950;
	text-decoration: none;
}

.ndt-candidate-dossier__field-grid a:hover {
	text-decoration: underline;
}

/* Actions */

.ndt-candidate-dossier__action-list {
	display: grid;
	gap: 10px;
	margin-top: 18px;
}

.ndt-candidate-dossier__action-list a:first-child {
	background: #ff006d;
	box-shadow: 0 14px 32px rgba(255, 0, 109, 0.18);
}

.ndt-candidate-dossier__job-context {
	margin-top: 16px;
	padding: 16px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-candidate-dossier__job-context strong {
	display: block;
	color: #0b1f3d;
	font-size: 16px;
	line-height: 1.35;
	font-weight: 950;
}

.ndt-candidate-dossier__job-context small {
	display: block;
	margin-top: 8px;
	color: #667085;
	font-size: 13px;
	line-height: 1.45;
	font-weight: 700;
}

/* Qualifications */

.ndt-candidate-dossier__qualifications {
	display: grid;
	gap: 16px;
}

.ndt-candidate-dossier__qualification-block--secondary {
	background: #fbfcfe;
}

/* Cert locker */

.ndt-candidate-dossier__cert-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-top: 18px;
}

.ndt-candidate-dossier__cert-card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 16px;
	min-height: 190px;
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 20px;
	background: #f7f9fc;
}

.ndt-candidate-dossier__cert-card h4 {
	margin: 0;
	color: #0b1f3d;
	font-size: 20px;
	line-height: 1.15;
	letter-spacing: -0.025em;
	font-weight: 950;
}

.ndt-candidate-dossier__cert-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 12px;
}

.ndt-candidate-dossier__cert-meta span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 7px 10px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 999px;
	background: #ffffff;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

.ndt-candidate-dossier__cert-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.ndt-candidate-dossier__cert-actions a {
	min-height: 38px;
	padding: 10px 13px;
	font-size: 13px;
}

.ndt-candidate-dossier__cert-missing {
	margin: 0;
	color: #667085;
	font-size: 13px;
	font-weight: 800;
}

.ndt-candidate-dossier__empty {
	margin-top: 18px;
	padding: 18px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-candidate-dossier__empty h4 {
	margin: 0 0 8px;
	color: #0b1f3d;
	font-size: 20px;
	font-weight: 950;
}

.ndt-candidate-dossier__empty p {
	margin: 0;
	color: #667085;
	font-size: 14px;
	font-weight: 700;
}

/* Responsive guards */

@media (max-width: 1100px) {
	.ndt-candidate-dossier__hero,
	.ndt-candidate-dossier__top-grid {
		grid-template-columns: 1fr;
	}

	.ndt-candidate-dossier__score-panel {
		grid-template-rows: auto;
	}

	.ndt-candidate-dossier__score {
		min-height: auto;
		place-items: start;
		text-align: left;
	}
}

@media (max-width: 780px) {
	.ndt-candidate-dossier__field-grid,
	.ndt-candidate-dossier__fit-summary-grid,
	.ndt-candidate-dossier__cert-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.ndt-candidate-dossier__hero,
	.ndt-candidate-dossier__snapshot,
	.ndt-candidate-dossier__actions,
	.ndt-candidate-dossier__fit-summary,
	.ndt-candidate-dossier__qualification-block,
	.ndt-candidate-dossier__certs {
		padding: 22px;
		border-radius: 24px;
	}

	.ndt-candidate-dossier__hero::before {
		left: 22px;
		right: 22px;
	}

	.ndt-candidate-dossier__hero h2 {
		font-size: 38px;
	}

	.ndt-candidate-dossier__score-panel a,
	.ndt-candidate-dossier__action-list a,
	.ndt-candidate-dossier__cert-actions a {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - Candidate Dossier V2 Visual Hierarchy Pass
========================================================= */

.ndt-candidate-dossier-v2,
.ndt-candidate-dossier-v2 * {
	box-sizing: border-box;
}

.ndt-candidate-dossier-v2 {
	display: grid;
	gap: 18px;
}

/* Hero, less boxy and more profile-like */

.ndt-candidate-dossier-v2__hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 210px;
	gap: 28px;
	align-items: stretch;
	padding: 34px;
	border-radius: 32px;
	background:
		radial-gradient(circle at top right, rgba(255, 0, 109, 0.12), transparent 22rem),
		linear-gradient(135deg, #0b1f3d 0%, #07172e 100%);
	color: #ffffff;
	box-shadow: 0 28px 80px rgba(11, 31, 61, 0.18);
	position: relative;
	overflow: hidden;
}

.ndt-candidate-dossier-v2__hero::after {
	content: "";
	position: absolute;
	left: 34px;
	right: 34px;
	bottom: 0;
	height: 5px;
	border-radius: 999px 999px 0 0;
	background: #ff006d;
}

.ndt-candidate-dossier-v2__hero-main {
	position: relative;
	z-index: 1;
}

.ndt-candidate-dossier-v2__crumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 18px;
}

.ndt-candidate-dossier-v2__crumbs a {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 8px 12px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	color: #ffffff;
	font-size: 13px;
	font-weight: 900;
	text-decoration: none;
}

.ndt-candidate-dossier-v2__crumbs a:hover {
	background: rgba(255, 255, 255, 0.16);
}

.ndt-candidate-dossier-v2__eyebrow {
	display: inline-flex;
	margin-bottom: 9px;
	color: #ff7eb6;
	font-size: 12px;
	font-weight: 950;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-candidate-dossier-v2__hero h2 {
	margin: 0;
	color: #ffffff;
	font-size: clamp(48px, 6vw, 82px);
	line-height: 0.94;
	letter-spacing: -0.07em;
	font-weight: 950;
}

.ndt-candidate-dossier-v2__subline {
	margin: 16px 0 0;
	color: rgba(255, 255, 255, 0.86);
	font-size: 20px;
	line-height: 1.45;
	font-weight: 850;
}

.ndt-candidate-dossier-v2__subline span {
	display: inline-flex;
	margin: 0 8px;
	color: rgba(255, 255, 255, 0.48);
}

.ndt-candidate-dossier-v2__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 20px;
}

.ndt-candidate-dossier-v2__chips span {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 8px 12px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.10);
	color: #ffffff;
	font-size: 12px;
	font-weight: 900;
}

/* Match stamp */

.ndt-candidate-dossier-v2__match-stamp {
	display: grid;
	place-items: center;
	align-self: center;
	min-height: 190px;
	padding: 20px;
	border: 1px solid rgba(245, 165, 36, 0.42);
	border-radius: 28px;
	background: linear-gradient(135deg, #ffcf5a 0%, #f5a524 100%);
	color: #0b1f3d;
	box-shadow: 0 22px 56px rgba(245, 165, 36, 0.26);
	text-align: center;
	position: relative;
	z-index: 1;
	transform: rotate(1.5deg);
}

.ndt-candidate-dossier-v2__match-stamp strong {
	display: block;
	color: #0b1f3d;
	font-size: 58px;
	line-height: 0.95;
	letter-spacing: -0.055em;
	font-weight: 950;
}

.ndt-candidate-dossier-v2__match-stamp span {
	display: block;
	margin-top: 10px;
	color: #0b1f3d;
	font-size: 13px;
	font-weight: 950;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-candidate-dossier-v2__match-stamp small {
	display: block;
	max-width: 150px;
	margin-top: 12px;
	color: rgba(11, 31, 61, 0.78);
	font-size: 12px;
	line-height: 1.35;
	font-weight: 800;
}

/* Standout section */

.ndt-candidate-dossier-v2__standout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(340px, 0.78fr);
	gap: 20px;
	align-items: stretch;
	padding: 30px;
	border: 1px solid rgba(245, 165, 36, 0.26);
	border-radius: 30px;
	background:
		linear-gradient(135deg, #fff7df 0%, #ffffff 52%, #ffffff 100%);
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-candidate-dossier-v2__standout h3,
.ndt-candidate-dossier-v2__snapshot h3,
.ndt-candidate-dossier-v2__actions h3,
.ndt-candidate-dossier-v2__capability-block h3,
.ndt-candidate-dossier-v2__certs h3 {
	margin: 0;
	color: #0b1f3d;
	font-size: 32px;
	line-height: 1.04;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-candidate-dossier-v2__standout p {
	max-width: 720px;
	margin: 16px 0 0;
	color: #344054;
	font-size: 18px;
	line-height: 1.58;
	font-weight: 650;
}

.ndt-candidate-dossier-v2__proof-points {
	display: grid;
	gap: 10px;
}

.ndt-candidate-dossier-v2__proof-points div {
	padding: 17px;
	border: 1px solid rgba(245, 165, 36, 0.20);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.78);
}

.ndt-candidate-dossier-v2__proof-points span,
.ndt-candidate-dossier-v2__fact-row span,
.ndt-candidate-dossier-v2__capability-list span,
.ndt-candidate-dossier-v2__job-context span,
.ndt-candidate-dossier-v2__cert-count span {
	display: block;
	margin-bottom: 7px;
	color: #667085;
	font-size: 11px;
	font-weight: 950;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.ndt-candidate-dossier-v2__proof-points strong,
.ndt-candidate-dossier-v2__fact-row strong,
.ndt-candidate-dossier-v2__capability-list strong {
	display: block;
	color: #0b1f3d;
	font-size: 15px;
	line-height: 1.42;
	font-weight: 900;
	overflow-wrap: anywhere;
}

/* Review grid */

.ndt-candidate-dossier-v2__review-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr);
	gap: 18px;
}

.ndt-candidate-dossier-v2__snapshot,
.ndt-candidate-dossier-v2__actions,
.ndt-candidate-dossier-v2__capability-block,
.ndt-candidate-dossier-v2__certs {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
	padding: 26px;
}

.ndt-candidate-dossier-v2__fact-row {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
	margin-top: 18px;
}

.ndt-candidate-dossier-v2__fact-row div {
	min-width: 0;
	padding: 15px;
	border-radius: 16px;
	background: #f7f9fc;
	border: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-candidate-dossier-v2__fact-row a {
	color: #ff006d;
	text-decoration: none;
	font-weight: 950;
}

.ndt-candidate-dossier-v2__fact-row a:hover {
	text-decoration: underline;
}

/* Actions */

.ndt-candidate-dossier-v2__action-buttons {
	display: grid;
	gap: 10px;
	margin-top: 18px;
}

.ndt-candidate-dossier-v2__action-buttons a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 12px 16px;
	border: 1px solid rgba(11, 31, 61, 0.14);
	border-radius: 999px;
	background: #ffffff;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 950;
	text-decoration: none;
	text-align: center;
}

.ndt-candidate-dossier-v2__action-buttons a.is-primary {
	border-color: #ff006d;
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 14px 32px rgba(255, 0, 109, 0.18);
}

.ndt-candidate-dossier-v2__action-buttons a:hover {
	border-color: rgba(255, 0, 109, 0.30);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

.ndt-candidate-dossier-v2__action-buttons a.is-primary:hover {
	border-color: #0b1f3d;
	background: #0b1f3d;
	color: #ffffff;
}

.ndt-candidate-dossier-v2__resume-missing {
	padding: 15px;
	border: 1px dashed rgba(11, 31, 61, 0.20);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-candidate-dossier-v2__resume-missing strong,
.ndt-candidate-dossier-v2__resume-missing span {
	display: block;
}

.ndt-candidate-dossier-v2__resume-missing strong {
	color: #0b1f3d;
	font-size: 15px;
	font-weight: 950;
}

.ndt-candidate-dossier-v2__resume-missing span {
	margin-top: 6px;
	color: #667085;
	font-size: 13px;
	line-height: 1.45;
	font-weight: 700;
}

.ndt-candidate-dossier-v2__job-context {
	margin-top: 14px;
	padding: 16px;
	border-radius: 18px;
	background: #0b1f3d;
	color: #ffffff;
}

.ndt-candidate-dossier-v2__job-context span {
	color: rgba(255, 255, 255, 0.62);
}

.ndt-candidate-dossier-v2__job-context strong {
	display: block;
	color: #ffffff;
	font-size: 16px;
	line-height: 1.35;
	font-weight: 950;
}

.ndt-candidate-dossier-v2__job-context small {
	display: block;
	margin-top: 8px;
	color: rgba(255, 255, 255, 0.72);
	font-size: 13px;
	line-height: 1.45;
	font-weight: 700;
}

/* Capabilities */

.ndt-candidate-dossier-v2__capabilities {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.ndt-candidate-dossier-v2__capability-block.is-primary {
	border-color: rgba(255, 0, 109, 0.16);
}

.ndt-candidate-dossier-v2__capability-list {
	display: grid;
	gap: 10px;
	margin-top: 18px;
}

.ndt-candidate-dossier-v2__capability-list div {
	padding: 15px 0;
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-candidate-dossier-v2__capability-list div:last-child {
	border-bottom: 0;
}

/* Certification locker */

.ndt-candidate-dossier-v2__certs-head {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	align-items: center;
	margin-bottom: 18px;
}

.ndt-candidate-dossier-v2__cert-count {
	min-width: 116px;
	padding: 14px;
	border-radius: 18px;
	background: #0b1f3d;
	color: #ffffff;
	text-align: center;
}

.ndt-candidate-dossier-v2__cert-count strong {
	display: block;
	color: #ffffff;
	font-size: 34px;
	line-height: 1;
	font-weight: 950;
}

.ndt-candidate-dossier-v2__cert-count span {
	margin: 7px 0 0;
	color: rgba(255, 255, 255, 0.72);
}

.ndt-candidate-dossier-v2__cert-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.ndt-candidate-dossier-v2__cert-card {
	display: grid;
	grid-template-columns: 88px minmax(0, 1fr);
	min-height: 210px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 22px;
	background: #ffffff;
	box-shadow: 0 16px 44px rgba(11, 31, 61, 0.07);
	overflow: hidden;
}

.ndt-candidate-dossier-v2__cert-band {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #0b1f3d;
	color: #ffffff;
}

.ndt-candidate-dossier-v2__cert-band span {
	transform: rotate(-90deg);
	white-space: nowrap;
	font-size: 11px;
	font-weight: 950;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.ndt-candidate-dossier-v2__cert-body {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 18px;
	padding: 20px;
	min-width: 0;
}

.ndt-candidate-dossier-v2__cert-body h4 {
	margin: 0;
	color: #0b1f3d;
	font-size: 24px;
	line-height: 1.08;
	letter-spacing: -0.035em;
	font-weight: 950;
}

.ndt-candidate-dossier-v2__cert-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
}

.ndt-candidate-dossier-v2__cert-meta span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 7px 10px;
	border: 1px solid rgba(11, 31, 61, 0.10);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 12px;
	font-weight: 900;
}

.ndt-candidate-dossier-v2__cert-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.ndt-candidate-dossier-v2__cert-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 10px 13px;
	border-radius: 999px;
	background: #0b1f3d;
	color: #ffffff;
	font-size: 13px;
	font-weight: 950;
	text-decoration: none;
}

.ndt-candidate-dossier-v2__cert-actions a:hover {
	background: #ff006d;
	color: #ffffff;
}

.ndt-candidate-dossier-v2__cert-missing {
	margin: 0;
	color: #667085;
	font-size: 13px;
	font-weight: 800;
}

.ndt-candidate-dossier-v2__empty {
	padding: 20px;
	border: 1px dashed rgba(11, 31, 61, 0.20);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-candidate-dossier-v2__empty h4 {
	margin: 0 0 8px;
	color: #0b1f3d;
	font-size: 20px;
	font-weight: 950;
}

.ndt-candidate-dossier-v2__empty p {
	margin: 0;
	color: #667085;
	font-size: 14px;
	line-height: 1.5;
	font-weight: 700;
}

/* Responsive guards */

@media (max-width: 1100px) {
	.ndt-candidate-dossier-v2__hero,
	.ndt-candidate-dossier-v2__standout,
	.ndt-candidate-dossier-v2__review-grid,
	.ndt-candidate-dossier-v2__capabilities {
		grid-template-columns: 1fr;
	}

	.ndt-candidate-dossier-v2__match-stamp {
		transform: none;
		place-items: start;
		text-align: left;
		min-height: auto;
	}
}

@media (max-width: 900px) {
	.ndt-candidate-dossier-v2__fact-row,
	.ndt-candidate-dossier-v2__cert-grid {
		grid-template-columns: 1fr;
	}

	.ndt-candidate-dossier-v2__certs-head {
		align-items: flex-start;
		flex-direction: column;
	}

	.ndt-candidate-dossier-v2__cert-count {
		width: 100%;
		text-align: left;
	}
}

@media (max-width: 680px) {
	.ndt-candidate-dossier-v2__hero,
	.ndt-candidate-dossier-v2__standout,
	.ndt-candidate-dossier-v2__snapshot,
	.ndt-candidate-dossier-v2__actions,
	.ndt-candidate-dossier-v2__capability-block,
	.ndt-candidate-dossier-v2__certs {
		padding: 22px;
		border-radius: 24px;
	}

	.ndt-candidate-dossier-v2__hero::after {
		left: 22px;
		right: 22px;
	}

	.ndt-candidate-dossier-v2__hero h2 {
		font-size: 42px;
	}

	.ndt-candidate-dossier-v2__subline {
		font-size: 17px;
	}

	.ndt-candidate-dossier-v2__cert-card {
		grid-template-columns: 1fr;
	}

	.ndt-candidate-dossier-v2__cert-band {
		min-height: 46px;
	}

	.ndt-candidate-dossier-v2__cert-band span {
		transform: none;
	}

	.ndt-candidate-dossier-v2__action-buttons a,
	.ndt-candidate-dossier-v2__cert-actions a {
		width: 100%;
	}
}

/* =========================================================
   NDT Jobs - My Jobs / WPJM Job Dashboard Shell
   Page: /my-jobs/
========================================================= */

.ndt-my-jobs-page .wp-site-blocks {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.08), transparent 28rem),
		linear-gradient(180deg, #ffffff 0%, #f3f6fa 100%);
}

.ndt-my-jobs-shell,
.ndt-my-jobs-shell * {
	box-sizing: border-box;
}

.ndt-my-jobs-shell {
	color: #0b1f3d;
}

.ndt-my-jobs-shell__main {
	padding: 34px 0 78px;
}

.ndt-my-jobs-shell__container {
	width: min(100% - 40px, 1320px);
	margin: 0 auto;
	display: grid;
	gap: 22px;
}

.ndt-my-jobs-shell__hero,
.ndt-my-jobs-shell__helper,
.ndt-my-jobs-shell__dashboard,
.ndt-my-jobs-shell__notice {
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
}

.ndt-my-jobs-shell__hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 24px;
	align-items: center;
	padding: 30px;
	position: relative;
	overflow: hidden;
}

.ndt-my-jobs-shell__hero::before {
	content: "";
	position: absolute;
	top: 0;
	left: 30px;
	right: 30px;
	height: 5px;
	border-radius: 0 0 999px 999px;
	background: #ff006d;
}

.ndt-my-jobs-shell__crumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 16px;
}

.ndt-my-jobs-shell__crumbs a {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 8px 12px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 999px;
	background: #f7f9fc;
	color: #0b1f3d;
	font-size: 13px;
	font-weight: 900;
	text-decoration: none;
}

.ndt-my-jobs-shell__crumbs a:hover {
	border-color: rgba(255, 0, 109, 0.30);
	background: rgba(255, 0, 109, 0.08);
}

.ndt-my-jobs-shell__eyebrow {
	display: inline-flex;
	margin-bottom: 8px;
	color: #ff006d;
	font-size: 12px;
	font-weight: 950;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ndt-my-jobs-shell__hero h1,
.ndt-my-jobs-shell__notice h1 {
	margin: 0;
	color: #0b1f3d;
	font-size: clamp(40px, 5vw, 68px);
	line-height: 0.98;
	letter-spacing: -0.065em;
	font-weight: 950;
}

.ndt-my-jobs-shell__hero p,
.ndt-my-jobs-shell__notice p {
	max-width: 780px;
	margin: 14px 0 0;
	color: #667085;
	font-size: 17px;
	line-height: 1.55;
	font-weight: 650;
}

.ndt-my-jobs-shell__hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.ndt-my-jobs-shell__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 13px 18px;
	border: 1px solid rgba(11, 31, 61, 0.14);
	border-radius: 999px;
	background: #ffffff;
	color: #0b1f3d;
	font-size: 14px;
	font-weight: 950;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

.ndt-my-jobs-shell__button--primary {
	border-color: #ff006d;
	background: #ff006d;
	color: #ffffff;
	box-shadow: 0 18px 42px rgba(255, 0, 109, 0.20);
}

.ndt-my-jobs-shell__button:hover {
	border-color: rgba(255, 0, 109, 0.30);
	background: rgba(255, 0, 109, 0.08);
	color: #0b1f3d;
}

.ndt-my-jobs-shell__button--primary:hover {
	border-color: #0b1f3d;
	background: #0b1f3d;
	color: #ffffff;
}

.ndt-my-jobs-shell__helper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	padding: 16px;
}

.ndt-my-jobs-shell__helper div {
	padding: 16px;
	border: 1px solid rgba(11, 31, 61, 0.08);
	border-radius: 18px;
	background: #f7f9fc;
}

.ndt-my-jobs-shell__helper strong,
.ndt-my-jobs-shell__helper span {
	display: block;
}

.ndt-my-jobs-shell__helper strong {
	color: #0b1f3d;
	font-size: 15px;
	font-weight: 950;
}

.ndt-my-jobs-shell__helper span {
	margin-top: 6px;
	color: #667085;
	font-size: 14px;
	line-height: 1.45;
	font-weight: 650;
}

.ndt-my-jobs-shell__dashboard {
	padding: 26px;
	overflow: hidden;
}

.ndt-my-jobs-shell__notice {
	padding: 30px;
}

/* =========================================================
   WPJM Job Dashboard Styling
   Keep WPJM functionality, restyle the UI
========================================================= */

.ndt-my-jobs-page #job-manager-job-dashboard,
.ndt-my-jobs-page .jm-dashboard {
	width: 100%;
	color: #0b1f3d;
}

.ndt-my-jobs-page #job-manager-job-dashboard > h1,
.ndt-my-jobs-page #job-manager-job-dashboard > h2,
.ndt-my-jobs-page .jm-dashboard h1,
.ndt-my-jobs-page .jm-dashboard h2 {
	margin: 0 0 20px !important;
	color: #0b1f3d !important;
	font-size: clamp(34px, 4vw, 54px) !important;
	line-height: 1 !important;
	letter-spacing: -0.055em !important;
	font-weight: 950 !important;
	text-align: left !important;
}

/* Search + add job area */

.ndt-my-jobs-page .jm-dashboard-header {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto !important;
	gap: 14px !important;
	align-items: center !important;
	margin: 0 0 18px !important;
	padding: 0 !important;
}

.ndt-my-jobs-page .jm-dashboard-header input[type="search"],
.ndt-my-jobs-page .jm-dashboard-header input[type="text"],
.ndt-my-jobs-page #job-manager-job-dashboard input[type="search"],
.ndt-my-jobs-page #job-manager-job-dashboard input[type="text"] {
	width: min(100%, 340px) !important;
	min-height: 46px !important;
	border: 1px solid rgba(11, 31, 61, 0.14) !important;
	border-radius: 14px !important;
	background: #ffffff !important;
	color: #0b1f3d !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	box-shadow: none !important;
}

.ndt-my-jobs-page .jm-dashboard-header a,
.ndt-my-jobs-page .jm-dashboard-header button,
.ndt-my-jobs-page .jm-dashboard-header .button,
.ndt-my-jobs-page #job-manager-job-dashboard .job-dashboard-action-add,
.ndt-my-jobs-page #job-manager-job-dashboard .add-job {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 42px !important;
	padding: 12px 16px !important;
	border: 1px solid #0b1f3d !important;
	border-radius: 999px !important;
	background: #0b1f3d !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 950 !important;
	text-decoration: none !important;
	line-height: 1 !important;
}

/* Rows */

.ndt-my-jobs-page .jm-dashboard-rows {
	display: grid !important;
	gap: 12px !important;
	margin-top: 18px !important;
}

.ndt-my-jobs-page .jm-dashboard-job {
	display: grid !important;
	grid-template-columns: minmax(0, 1.35fr) 170px 170px 210px !important;
	gap: 14px !important;
	align-items: center !important;
	padding: 18px !important;
	border: 1px solid rgba(11, 31, 61, 0.12) !important;
	border-radius: 22px !important;
	background: #ffffff !important;
	box-shadow: 0 16px 44px rgba(11, 31, 61, 0.07) !important;
	transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease !important;
}

.ndt-my-jobs-page .jm-dashboard-job:hover {
	transform: translateY(-1px);
	border-color: rgba(255, 0, 109, 0.22) !important;
	box-shadow: 0 22px 60px rgba(11, 31, 61, 0.11) !important;
}

.ndt-my-jobs-page .jm-dashboard-job-column {
	min-width: 0 !important;
}

.ndt-my-jobs-page .jm-dashboard-job-column.title,
.ndt-my-jobs-page .jm-dashboard-job-column.job_title {
	display: grid !important;
	gap: 4px !important;
}

.ndt-my-jobs-page .jm-dashboard-job-column.title a,
.ndt-my-jobs-page .jm-dashboard-job-column.job_title a,
.ndt-my-jobs-page .jm-dashboard-job h3,
.ndt-my-jobs-page .jm-dashboard-job h4 {
	color: #0b1f3d !important;
	font-size: 20px !important;
	line-height: 1.12 !important;
	letter-spacing: -0.035em !important;
	font-weight: 950 !important;
	text-decoration: none !important;
}

.ndt-my-jobs-page .jm-dashboard-job-column.title a:hover,
.ndt-my-jobs-page .jm-dashboard-job-column.job_title a:hover {
	color: #ff006d !important;
}

.ndt-my-jobs-page .jm-dashboard-job-column.company {
	display: none !important;
}

/* Date and stat text */

.ndt-my-jobs-page .jm-dashboard-job-column.date,
.ndt-my-jobs-page .jm-dashboard-job-column.stats,
.ndt-my-jobs-page .jm-dashboard-job-column.views {
	color: #344054 !important;
	font-size: 13px !important;
	line-height: 1.35 !important;
	font-weight: 700 !important;
}

.ndt-my-jobs-page .jm-dashboard-job-column.date strong,
.ndt-my-jobs-page .jm-dashboard-job-column.stats strong,
.ndt-my-jobs-page .jm-dashboard-job-column.views strong {
	display: block !important;
	color: #0b1f3d !important;
	font-size: 16px !important;
	font-weight: 950 !important;
}

/* Status labels */

.ndt-my-jobs-page .jm-dashboard-job .job-status,
.ndt-my-jobs-page .jm-dashboard-job .status,
.ndt-my-jobs-page .jm-dashboard-job small {
	color: #667085 !important;
	font-size: 12px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
}

/* Actions */

.ndt-my-jobs-page .jm-dashboard-job-column.actions,
.ndt-my-jobs-page .jm-dashboard-job-actions {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 10px !important;
}

.ndt-my-jobs-page .jm-dashboard-job-column.actions a,
.ndt-my-jobs-page .jm-dashboard-job-column.actions button,
.ndt-my-jobs-page .jm-dashboard-job-actions a,
.ndt-my-jobs-page .jm-dashboard-job-actions button,
.ndt-my-jobs-page #job-manager-job-dashboard .job-dashboard-action {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 38px !important;
	padding: 10px 13px !important;
	border: 1px solid rgba(11, 31, 61, 0.14) !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	color: #0b1f3d !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	text-decoration: none !important;
}

.ndt-my-jobs-page .jm-dashboard-job-column.actions a:hover,
.ndt-my-jobs-page .jm-dashboard-job-column.actions button:hover,
.ndt-my-jobs-page .jm-dashboard-job-actions a:hover,
.ndt-my-jobs-page .jm-dashboard-job-actions button:hover,
.ndt-my-jobs-page #job-manager-job-dashboard .job-dashboard-action:hover {
	border-color: #ff006d !important;
	background: rgba(255, 0, 109, 0.08) !important;
	color: #0b1f3d !important;
}

/* Mark filled is useful but should not dominate */
.ndt-my-jobs-page #job-manager-job-dashboard .job-dashboard-action-mark_filled,
.ndt-my-jobs-page #job-manager-job-dashboard .mark-filled {
	border-color: rgba(11, 31, 61, 0.18) !important;
	background: #ffffff !important;
	color: #0b1f3d !important;
}

/* Delete stays dangerous */
.ndt-my-jobs-page #job-manager-job-dashboard .job-dashboard-action-delete,
.ndt-my-jobs-page #job-manager-job-dashboard .delete {
	border-color: rgba(180, 35, 24, 0.30) !important;
	color: #b42318 !important;
}

.ndt-my-jobs-page #job-manager-job-dashboard .job-dashboard-action-delete:hover,
.ndt-my-jobs-page #job-manager-job-dashboard .delete:hover {
	background: rgba(180, 35, 24, 0.08) !important;
}

/* Three dot menu */
.ndt-my-jobs-page .jm-dashboard-job-actions .job-dashboard-action-more,
.ndt-my-jobs-page .jm-dashboard-job-column.actions .job-dashboard-action-more {
	width: 38px !important;
	min-width: 38px !important;
	padding: 0 !important;
	border-radius: 50% !important;
}

/* Modal polish, keep WPJM behavior */

.ndt-my-jobs-page .jm-ui-modal,
.ndt-my-jobs-page .jm-dashboard-modal,
.ndt-my-jobs-page .job-dashboard-modal {
	border-radius: 28px !important;
	box-shadow: 0 32px 90px rgba(11, 31, 61, 0.24) !important;
	overflow: hidden !important;
}

.ndt-my-jobs-page .jm-ui-modal h2,
.ndt-my-jobs-page .jm-dashboard-modal h2,
.ndt-my-jobs-page .job-dashboard-modal h2 {
	color: #0b1f3d !important;
	font-size: 34px !important;
	line-height: 1.05 !important;
	letter-spacing: -0.045em !important;
	font-weight: 950 !important;
}

/* Responsive guards */

@media (max-width: 1100px) {
	.ndt-my-jobs-page .jm-dashboard-job {
		grid-template-columns: minmax(0, 1fr) 150px 150px !important;
	}

	.ndt-my-jobs-page .jm-dashboard-job-column.actions,
	.ndt-my-jobs-page .jm-dashboard-job-actions {
		grid-column: 1 / -1 !important;
		justify-content: flex-start !important;
	}
}

@media (max-width: 780px) {
	.ndt-my-jobs-shell__hero,
	.ndt-my-jobs-shell__helper {
		grid-template-columns: 1fr;
	}

	.ndt-my-jobs-shell__hero-actions {
		justify-content: flex-start;
	}

	.ndt-my-jobs-page .jm-dashboard-header {
		grid-template-columns: 1fr !important;
	}

	.ndt-my-jobs-page .jm-dashboard-job {
		grid-template-columns: 1fr !important;
	}

	.ndt-my-jobs-page .jm-dashboard-job-column.actions,
	.ndt-my-jobs-page .jm-dashboard-job-actions {
		justify-content: flex-start !important;
	}

	.ndt-my-jobs-shell__button,
	.ndt-my-jobs-page .jm-dashboard-header a,
	.ndt-my-jobs-page .jm-dashboard-header button,
	.ndt-my-jobs-page .jm-dashboard-job-column.actions a,
	.ndt-my-jobs-page .jm-dashboard-job-column.actions button,
	.ndt-my-jobs-page .jm-dashboard-job-actions a,
	.ndt-my-jobs-page .jm-dashboard-job-actions button {
		width: 100% !important;
	}
}

@media (max-width: 680px) {
	.ndt-my-jobs-shell__container {
		width: min(100% - 24px, 1320px);
	}

	.ndt-my-jobs-shell__hero,
	.ndt-my-jobs-shell__dashboard,
	.ndt-my-jobs-shell__notice {
		padding: 22px;
		border-radius: 24px;
	}

	.ndt-my-jobs-shell__hero::before {
		left: 22px;
		right: 22px;
	}

	.ndt-my-jobs-shell__hero h1 {
		font-size: 40px;
	}
}

/* Tighten My Jobs card spacing */
.ndt-my-jobs-page .jm-dashboard-rows {
	gap: 10px !important;
}

.ndt-my-jobs-page .jm-dashboard-job {
	padding: 16px 18px !important;
	min-height: 92px !important;
}

/* =========================================================
   NDT Jobs - My Jobs WPJM Action Menu Layer Fix
   Keeps 3-dot dropdown above nearby job rows
========================================================= */

.ndt-my-jobs-page .jm-dashboard-rows,
.ndt-my-jobs-page .jm-dashboard-job,
.ndt-my-jobs-page .jm-dashboard-job-column.actions,
.ndt-my-jobs-page .jm-dashboard-job-actions {
	overflow: visible !important;
}

.ndt-my-jobs-page .jm-dashboard-job {
	position: relative !important;
	z-index: 1 !important;
}

.ndt-my-jobs-page .jm-dashboard-job:hover,
.ndt-my-jobs-page .jm-dashboard-job:focus-within {
	z-index: 50 !important;
}

/* Action dropdown/menu */
.ndt-my-jobs-page .jm-dashboard-job-actions,
.ndt-my-jobs-page .jm-dashboard-job-column.actions {
	position: relative !important;
}

.ndt-my-jobs-page .jm-dashboard-job-actions ul,
.ndt-my-jobs-page .jm-dashboard-job-column.actions ul,
.ndt-my-jobs-page .jm-dashboard-job-actions .jm-dashboard-job-actions-menu,
.ndt-my-jobs-page .jm-dashboard-job-column.actions .jm-dashboard-job-actions-menu,
.ndt-my-jobs-page .jm-dashboard-action-menu,
.ndt-my-jobs-page .job-dashboard-actions {
	z-index: 9999 !important;
}


/* =========================================================
   NDT Jobs - Post a Job Page
   ========================================================= */

.ndt-post-job-page {
	--ndt-post-navy: #0B1F3D;
	--ndt-post-navy-2: #102C54;
	--ndt-post-pink: #FF006D;
	--ndt-post-pink-soft: rgba(255, 0, 109, 0.12);
	--ndt-post-ink: #101828;
	--ndt-post-muted: #667085;
	--ndt-post-border: rgba(11, 31, 61, 0.12);
	--ndt-post-bg: #F7F9FC;
	--ndt-post-shadow: 0 24px 70px rgba(11, 31, 61, 0.13);
	background: var(--ndt-post-bg);
	color: var(--ndt-post-ink);
}

.ndt-post-job-main {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.12), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #F7F9FC 45%, #F7F9FC 100%);
	min-height: 100vh;
}

.ndt-post-job-wrap {
	width: min(1180px, calc(100% - 40px));
	margin: 0 auto;
}

.ndt-post-job-hero {
	padding: 72px 0 54px;
}

.ndt-post-job-hero-inner {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
	gap: 36px;
	align-items: center;
}

.ndt-post-job-eyebrow {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	margin-bottom: 14px;
	padding: 7px 12px;
	border: 1px solid rgba(255, 0, 109, 0.22);
	border-radius: 999px;
	background: var(--ndt-post-pink-soft);
	color: var(--ndt-post-pink);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

.ndt-post-job-hero h1 {
	max-width: 760px;
	margin: 0;
	color: var(--ndt-post-navy);
	font-size: clamp(42px, 5vw, 68px);
	line-height: 0.96;
	letter-spacing: -0.055em;
	font-weight: 900;
}

.ndt-post-job-hero p {
	max-width: 680px;
	margin: 22px 0 0;
	color: var(--ndt-post-muted);
	font-size: 18px;
	line-height: 1.7;
}

.ndt-post-job-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 28px;
}

.ndt-post-job-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 13px 20px;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 800;
	text-decoration: none;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.ndt-post-job-btn:hover {
	transform: translateY(-1px);
}

.ndt-post-job-btn-primary {
	background: var(--ndt-post-pink);
	color: #fff;
	box-shadow: 0 16px 32px rgba(255, 0, 109, 0.22);
}

.ndt-post-job-btn-primary:hover {
	background: #d9005c;
	color: #fff;
}

.ndt-post-job-btn-secondary {
	background: #fff;
	color: var(--ndt-post-navy);
	border: 1px solid var(--ndt-post-border);
	box-shadow: 0 10px 24px rgba(11, 31, 61, 0.08);
}

.ndt-post-job-btn-secondary:hover {
	color: var(--ndt-post-pink);
}

.ndt-post-job-hero-panel {
	padding: 24px;
	border: 1px solid var(--ndt-post-border);
	border-radius: 28px;
	background: rgba(255, 255, 255, 0.88);
	box-shadow: var(--ndt-post-shadow);
	backdrop-filter: blur(10px);
}

.ndt-post-job-step {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 14px;
	padding: 16px 0;
	border-bottom: 1px solid rgba(11, 31, 61, 0.09);
}

.ndt-post-job-step:first-child {
	padding-top: 0;
}

.ndt-post-job-step:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.ndt-post-job-step span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--ndt-post-navy);
	color: #fff;
	font-size: 15px;
	font-weight: 900;
}

.ndt-post-job-step strong {
	display: block;
	color: var(--ndt-post-navy);
	font-size: 16px;
	font-weight: 900;
}

.ndt-post-job-step p {
	margin: 4px 0 0;
	color: var(--ndt-post-muted);
	font-size: 14px;
	line-height: 1.5;
}

.ndt-post-job-content {
	padding: 0 0 80px;
}

.ndt-post-job-layout {
	display: grid;
	grid-template-columns: 320px minmax(0, 1fr);
	gap: 28px;
	align-items: start;
}

.ndt-post-job-sidebar {
	position: sticky;
	top: 24px;
}

.ndt-post-job-sidebar-card,
.ndt-post-job-form-card {
	border: 1px solid var(--ndt-post-border);
	border-radius: 28px;
	background: #fff;
	box-shadow: 0 18px 50px rgba(11, 31, 61, 0.08);
}

.ndt-post-job-sidebar-card {
	padding: 24px;
}

.ndt-post-job-sidebar-card h2 {
	margin: 0 0 16px;
	color: var(--ndt-post-navy);
	font-size: 22px;
	line-height: 1.15;
	letter-spacing: -0.03em;
	font-weight: 900;
}

.ndt-post-job-sidebar-card ul {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ndt-post-job-sidebar-card li {
	position: relative;
	padding-left: 24px;
	color: var(--ndt-post-ink);
	font-size: 14px;
	line-height: 1.5;
}

.ndt-post-job-sidebar-card li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55em;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--ndt-post-pink);
	box-shadow: 0 0 0 5px var(--ndt-post-pink-soft);
}

.ndt-post-job-sidebar-card p {
	margin: 18px 0 0;
	padding-top: 18px;
	border-top: 1px solid rgba(11, 31, 61, 0.09);
	color: var(--ndt-post-muted);
	font-size: 14px;
	line-height: 1.6;
}

.ndt-post-job-form-card {
	overflow: hidden;
}

.ndt-post-job-form-heading {
	padding: 30px 32px 24px;
	border-bottom: 1px solid rgba(11, 31, 61, 0.1);
	background:
		radial-gradient(circle at top right, rgba(255, 0, 109, 0.09), transparent 24rem),
		linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
}

.ndt-post-job-form-heading h2 {
	margin: 0;
	color: var(--ndt-post-navy);
	font-size: 34px;
	line-height: 1.05;
	letter-spacing: -0.045em;
	font-weight: 900;
}

.ndt-post-job-form-heading p {
	max-width: 760px;
	margin: 12px 0 0;
	color: var(--ndt-post-muted);
	font-size: 16px;
	line-height: 1.65;
}

.ndt-post-job-form-shell {
	padding: 32px;
}

/* =========================================================
   WP Job Manager Submit Job Form Styling
   ========================================================= */

.ndt-post-job-form-shell form,
.ndt-post-job-form-shell .job-manager-form {
	width: 100%;
	margin: 0;
	padding: 0;
}

.ndt-post-job-form-shell fieldset:first-of-type {
	padding-top: 0;
}

.ndt-post-job-form-shell fieldset:last-of-type {
	border-bottom: 0;
}

.ndt-post-job-form-shell fieldset small,
.ndt-post-job-form-shell .description,
.ndt-post-job-form-shell .field small {
	display: block;
	margin-top: 8px;
	color: var(--ndt-post-muted);
	font-size: 14px;
	line-height: 1.45;
}

.ndt-post-job-form-shell .field,
.ndt-post-job-form-shell div.field {
	float: none !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
}

.ndt-post-job-form-shell input[type="text"],
.ndt-post-job-form-shell input[type="email"],
.ndt-post-job-form-shell input[type="url"],
.ndt-post-job-form-shell input[type="number"],
.ndt-post-job-form-shell input[type="password"],
.ndt-post-job-form-shell select,
.ndt-post-job-form-shell textarea:not(.wp-editor-area) {
	width: 100% !important;
	max-width: 100% !important;
	min-height: 46px;
	margin: 0;
	padding: 11px 14px;
	border: 1px solid rgba(11, 31, 61, 0.18);
	border-radius: 14px;
	background: #fff;
	color: var(--ndt-post-ink);
	font-size: 15px;
	line-height: 1.4;
	box-shadow: none;
	outline: none;
	transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}

.ndt-post-job-form-shell textarea:not(.wp-editor-area) {
	min-height: 220px;
	resize: vertical;
}

.ndt-post-job-form-shell input:focus,
.ndt-post-job-form-shell select:focus,
.ndt-post-job-form-shell textarea:focus {
	border-color: rgba(255, 0, 109, 0.65);
	box-shadow: 0 0 0 4px rgba(255, 0, 109, 0.11);
}

.ndt-post-job-form-shell ::placeholder {
	color: #98A2B3;
}

.ndt-post-job-form-shell .wp-editor-wrap {
	border: 1px solid rgba(11, 31, 61, 0.14);
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
}

.ndt-post-job-form-shell .wp-editor-tools {
	background: #F7F9FC;
}

.ndt-post-job-form-shell .quicktags-toolbar,
.ndt-post-job-form-shell div.mce-toolbar-grp {
	border-color: rgba(11, 31, 61, 0.1) !important;
	background: #F7F9FC !important;
}

.ndt-post-job-form-shell .wp-editor-container {
	border: 0 !important;
}

.ndt-post-job-form-shell .job-manager-uploaded-files {
	margin-top: 12px;
}

/* Checkbox and radio groups */
.ndt-post-job-form-shell .field input[type="checkbox"],
.ndt-post-job-form-shell .field input[type="radio"] {
	width: 16px;
	height: 16px;
	margin: 0 8px 0 0;
	accent-color: var(--ndt-post-pink);
}

.ndt-post-job-form-shell .field > label,
.ndt-post-job-form-shell .field .job-manager-term-checklist label,
.ndt-post-job-form-shell .field ul label,
.ndt-post-job-form-shell .field li label {
	display: inline-flex;
	align-items: flex-start;
	gap: 8px;
	margin: 0;
	color: var(--ndt-post-ink);
	font-size: 15px;
	line-height: 1.35;
	font-weight: 650;
}

/* Force long checkbox areas into clean option grids */
.ndt-post-job-form-shell .job-manager-term-checklist,
.ndt-post-job-form-shell .field ul.job-manager-term-checklist,
.ndt-post-job-form-shell .field ul {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px 12px;
	width: 100%;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: visible !important;
	list-style: none !important;
}

.ndt-post-job-form-shell .job-manager-term-checklist li,
.ndt-post-job-form-shell .field ul li {
	display: flex;
	align-items: flex-start;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	break-inside: avoid;
}

.ndt-post-job-form-shell .job-manager-term-checklist label,
.ndt-post-job-form-shell .field ul li label {
	width: 100%;
	min-height: 44px;
	padding: 10px 12px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 14px;
	background: #F7F9FC;
	cursor: pointer;
	transition: border-color 0.16s ease, background 0.16s ease, box-shadow 0.16s ease;
}

.ndt-post-job-form-shell .job-manager-term-checklist label:hover,
.ndt-post-job-form-shell .field ul li label:hover {
	border-color: rgba(255, 0, 109, 0.3);
	background: #fff;
	box-shadow: 0 8px 20px rgba(11, 31, 61, 0.06);
}

/* Account signed-in notice */
.ndt-post-job-form-shell .job-manager-form > p,
.ndt-post-job-form-shell form > p {
	margin: 0 0 22px;
	padding: 16px 18px;
	border: 1px solid rgba(11, 31, 61, 0.11);
	border-radius: 18px;
	background: #F7F9FC;
	color: var(--ndt-post-muted);
	font-size: 15px;
	line-height: 1.6;
}

.ndt-post-job-form-shell .job-manager-form > p a,
.ndt-post-job-form-shell form > p a {
	color: var(--ndt-post-pink);
	font-weight: 800;
}

/* Submit buttons */
.ndt-post-job-form-shell p:last-child {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
	margin-top: 28px;
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.1);
	border-radius: 22px;
	background: linear-gradient(180deg, #ffffff 0%, #F7F9FC 100%);
}

.ndt-post-job-form-shell > form input[type="submit"],
.ndt-post-job-form-shell > form button,
.ndt-post-job-form-shell > form .button,
.ndt-post-job-form-shell .job-manager-form input[type="submit"],
.ndt-post-job-form-shell .job-manager-form > p .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 18px;
	border: 0;
	border-radius: 999px;
	background: var(--ndt-post-pink);
	color: #fff;
	font-size: 15px;
	font-weight: 850;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 14px 30px rgba(255, 0, 109, 0.2);
	transition: transform 0.16s ease, background 0.16s ease, box-shadow 0.16s ease;
}

.ndt-post-job-form-shell input[type="submit"]:hover,
.ndt-post-job-form-shell button:hover,
.ndt-post-job-form-shell .button:hover {
	transform: translateY(-1px);
	background: #d9005c;
	color: #fff;
}

/* Make Preview secondary if WPJM outputs multiple submit buttons */
.ndt-post-job-form-shell input[name="submit_job"],
.ndt-post-job-form-shell input[value="Preview"] {
	background: #fff;
	color: var(--ndt-post-navy);
	border: 1px solid rgba(11, 31, 61, 0.14);
	box-shadow: 0 10px 24px rgba(11, 31, 61, 0.08);
}

.ndt-post-job-form-shell input[name="submit_job"]:hover,
.ndt-post-job-form-shell input[value="Preview"]:hover {
	background: var(--ndt-post-navy);
	color: #fff;
}

/* =========================================================
   Final WPJM Post a Job Form Layout Reset
   ========================================================= */

.ndt-post-job-form-shell form.job-manager-form fieldset,
.ndt-post-job-form-shell #submit-job-form fieldset {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 26px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(11, 31, 61, 0.1) !important;
}

.ndt-post-job-form-shell form.job-manager-form fieldset label,
.ndt-post-job-form-shell #submit-job-form fieldset label {
	order: 1 !important;
	display: block !important;
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 10px !important;
	padding: 0 !important;
	color: #0B1F3D !important;
	font-size: 17px !important;
	font-weight: 850 !important;
	line-height: 1.35 !important;
	text-align: left !important;
}

.ndt-post-job-form-shell form.job-manager-form fieldset .field,
.ndt-post-job-form-shell #submit-job-form fieldset .field {
	order: 2 !important;
	display: block !important;
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.ndt-post-job-form-shell form.job-manager-form fieldset small.description,
.ndt-post-job-form-shell form.job-manager-form fieldset .description,
.ndt-post-job-form-shell #submit-job-form fieldset small.description,
.ndt-post-job-form-shell #submit-job-form fieldset .description {
	order: 3 !important;
	display: block !important;
	width: 100% !important;
	max-width: 680px !important;
	margin: 10px 0 0 !important;
	padding: 0 !important;
	color: #667085 !important;
	font-size: 14px !important;
	line-height: 1.45 !important;
	text-align: left !important;
}

.ndt-post-job-form-shell form.job-manager-form input[type="text"],
.ndt-post-job-form-shell form.job-manager-form input[type="email"],
.ndt-post-job-form-shell form.job-manager-form input[type="url"],
.ndt-post-job-form-shell form.job-manager-form input[type="number"],
.ndt-post-job-form-shell form.job-manager-form select,
.ndt-post-job-form-shell form.job-manager-form textarea:not(.wp-editor-area),
.ndt-post-job-form-shell #submit-job-form input[type="text"],
.ndt-post-job-form-shell #submit-job-form input[type="email"],
.ndt-post-job-form-shell #submit-job-form input[type="url"],
.ndt-post-job-form-shell #submit-job-form input[type="number"],
.ndt-post-job-form-shell #submit-job-form select,
.ndt-post-job-form-shell #submit-job-form textarea:not(.wp-editor-area) {
	display: block !important;
	width: 100% !important;
	max-width: 680px !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: 12px 15px !important;
	border: 1px solid rgba(11, 31, 61, 0.16) !important;
	border-radius: 14px !important;
	background: #fff !important;
	color: #101828 !important;
	font-size: 15px !important;
	line-height: 1.4 !important;
	box-shadow: none !important;
	outline: none !important;
}

.ndt-post-job-form-shell form.job-manager-form input:focus,
.ndt-post-job-form-shell form.job-manager-form select:focus,
.ndt-post-job-form-shell form.job-manager-form textarea:focus,
.ndt-post-job-form-shell #submit-job-form input:focus,
.ndt-post-job-form-shell #submit-job-form select:focus,
.ndt-post-job-form-shell #submit-job-form textarea:focus {
	border-color: rgba(255, 0, 109, 0.65) !important;
	box-shadow: 0 0 0 4px rgba(255, 0, 109, 0.11) !important;
}

/* =========================================================
   WPJM Checkbox / Taxonomy Field Cleanup
   ========================================================= */

.ndt-post-job-form-shell form.job-manager-form fieldset.fieldset-type-term-checklist .field,
.ndt-post-job-form-shell #submit-job-form fieldset.fieldset-type-term-checklist .field {
	max-width: 100% !important;
}

.ndt-post-job-form-shell form.job-manager-form .job-manager-term-checklist,
.ndt-post-job-form-shell form.job-manager-form .field ul,
.ndt-post-job-form-shell #submit-job-form .job-manager-term-checklist,
.ndt-post-job-form-shell #submit-job-form .field ul {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 12px 22px !important;
	width: 100% !important;
	max-width: 900px !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	border: 0 !important;
	list-style: none !important;
}

.ndt-post-job-form-shell form.job-manager-form .job-manager-term-checklist li,
.ndt-post-job-form-shell form.job-manager-form .field ul li,
.ndt-post-job-form-shell #submit-job-form .job-manager-term-checklist li,
.ndt-post-job-form-shell #submit-job-form .field ul li {
	display: block !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.ndt-post-job-form-shell form.job-manager-form .job-manager-term-checklist li label,
.ndt-post-job-form-shell form.job-manager-form .field ul li label,
.ndt-post-job-form-shell #submit-job-form .job-manager-term-checklist li label,
.ndt-post-job-form-shell #submit-job-form .field ul li label {
	display: flex !important;
	align-items: flex-start !important;
	gap: 9px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #101828 !important;
	font-size: 15px !important;
	font-weight: 650 !important;
	line-height: 1.35 !important;
	cursor: pointer !important;
}

.ndt-post-job-form-shell form.job-manager-form input[type="checkbox"],
.ndt-post-job-form-shell form.job-manager-form input[type="radio"],
.ndt-post-job-form-shell #submit-job-form input[type="checkbox"],
.ndt-post-job-form-shell #submit-job-form input[type="radio"] {
	flex: 0 0 auto !important;
	width: 16px !important;
	height: 16px !important;
	margin: 2px 0 0 !important;
	accent-color: #FF006D;
}

@media (max-width: 900px) {
	.ndt-post-job-form-shell form.job-manager-form .job-manager-term-checklist,
	.ndt-post-job-form-shell form.job-manager-form .field ul,
	.ndt-post-job-form-shell #submit-job-form .job-manager-term-checklist,
	.ndt-post-job-form-shell #submit-job-form .field ul {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 640px) {
	.ndt-post-job-form-shell form.job-manager-form .job-manager-term-checklist,
	.ndt-post-job-form-shell form.job-manager-form .field ul,
	.ndt-post-job-form-shell #submit-job-form .job-manager-term-checklist,
	.ndt-post-job-form-shell #submit-job-form .field ul {
		grid-template-columns: 1fr !important;
	}

	.ndt-post-job-form-shell form.job-manager-form input[type="text"],
	.ndt-post-job-form-shell form.job-manager-form input[type="email"],
	.ndt-post-job-form-shell form.job-manager-form input[type="url"],
	.ndt-post-job-form-shell form.job-manager-form input[type="number"],
	.ndt-post-job-form-shell form.job-manager-form select,
	.ndt-post-job-form-shell form.job-manager-form textarea,
	.ndt-post-job-form-shell #submit-job-form input[type="text"],
	.ndt-post-job-form-shell #submit-job-form input[type="email"],
	.ndt-post-job-form-shell #submit-job-form input[type="url"],
	.ndt-post-job-form-shell #submit-job-form input[type="number"],
	.ndt-post-job-form-shell #submit-job-form select,
	.ndt-post-job-form-shell #submit-job-form textarea {
		max-width: 100% !important;
	}
}

/* =========================================================
   Post a Job - Fix WP Editor / Description Field
   ========================================================= */

/* Do not treat TinyMCE editor internals like normal form fields */
.ndt-post-job-form-shell .wp-editor-wrap textarea,
.ndt-post-job-form-shell .wp-editor-wrap iframe,
.ndt-post-job-form-shell .wp-editor-wrap .mce-edit-area,
.ndt-post-job-form-shell .wp-editor-wrap .mce-container,
.ndt-post-job-form-shell .wp-editor-wrap .mce-panel {
	max-width: none !important;
	box-shadow: none !important;
}

/* Main editor shell */
.ndt-post-job-form-shell .wp-editor-wrap {
	width: 100% !important;
	max-width: 100% !important;
	border: 1px solid rgba(11, 31, 61, 0.14) !important;
	border-radius: 16px !important;
	overflow: hidden !important;
	background: #fff !important;
	box-shadow: none !important;
}

/* Toolbar */
.ndt-post-job-form-shell .quicktags-toolbar,
.ndt-post-job-form-shell div.mce-toolbar-grp,
.ndt-post-job-form-shell .mce-top-part::before {
	background: #F7F9FC !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(11, 31, 61, 0.12) !important;
	box-shadow: none !important;
}

/* Editor content area */
.ndt-post-job-form-shell .wp-editor-container {
	border: 0 !important;
	box-shadow: none !important;
}

.ndt-post-job-form-shell .mce-edit-area {
	border: 0 !important;
	box-shadow: none !important;
}

/* TinyMCE iframe/content area sizing */
.ndt-post-job-form-shell .wp-editor-wrap iframe {
	width: 100% !important;
	min-height: 260px !important;
	border: 0 !important;
	background: #fff !important;
}

/* =========================================================
   Post a Job - Remove TinyMCE Toolbar Button Glow
   ========================================================= */

.ndt-post-job-form-shell .mce-btn,
.ndt-post-job-form-shell .mce-btn button,
.ndt-post-job-form-shell .quicktags-toolbar input,
.ndt-post-job-form-shell .quicktags-toolbar button {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #475467 !important;
	text-shadow: none !important;
}

.ndt-post-job-form-shell .mce-btn:hover,
.ndt-post-job-form-shell .mce-btn:focus,
.ndt-post-job-form-shell .mce-btn.mce-active,
.ndt-post-job-form-shell .mce-btn button:hover,
.ndt-post-job-form-shell .mce-btn button:focus,
.ndt-post-job-form-shell .quicktags-toolbar input:hover,
.ndt-post-job-form-shell .quicktags-toolbar input:focus,
.ndt-post-job-form-shell .quicktags-toolbar button:hover,
.ndt-post-job-form-shell .quicktags-toolbar button:focus {
	background: rgba(11, 31, 61, 0.06) !important;
	border: 0 !important;
	box-shadow: none !important;
	color: #0B1F3D !important;
	outline: none !important;
	transform: none !important;
}

/* Prevent global pink button styling from hitting editor buttons */
.ndt-post-job-form-shell .wp-editor-wrap button,
.ndt-post-job-form-shell .wp-editor-wrap .button,
.ndt-post-job-form-shell .wp-editor-wrap input[type="button"] {
	min-height: auto !important;
	padding: initial !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: inherit !important;
	box-shadow: none !important;
	transform: none !important;
}

/* Hide WPJM signed-in account section */
.ndt-post-job-form-shell form.job-manager-form fieldset.fieldset-logged_in,
.ndt-post-job-form-shell #submit-job-form fieldset.fieldset-logged_in {
	display: none !important;
}

/* Hide WPJM Location field because it is auto-filled from City + State */
.ndt-post-job-form-shell form.job-manager-form fieldset.fieldset-job_location,
.ndt-post-job-form-shell #submit-job-form fieldset.fieldset-job_location {
	display: none !important;
}

/* =========================================================
   NDT Jobs - Job Packages Page
   ========================================================= */

/* The PHP page template owns the hero now, so hide the shortcode's duplicate header */
.ndt-job-packages-page .ndt-packages-header {
	display: none;
}

/* =========================================================
   NDT Jobs - Job Packages Page Shell
   ========================================================= */

.ndt-job-packages-page {
	--ndt-pack-navy: #0B1F3D;
	--ndt-pack-navy-2: #102C54;
	--ndt-pack-pink: #FF006D;
	--ndt-pack-pink-soft: rgba(255, 0, 109, 0.12);
	--ndt-pack-ink: #101828;
	--ndt-pack-muted: #667085;
	--ndt-pack-border: rgba(11, 31, 61, 0.12);
	--ndt-pack-bg: #F7F9FC;
	--ndt-pack-shadow: 0 24px 70px rgba(11, 31, 61, 0.13);
	background: var(--ndt-pack-bg);
	color: var(--ndt-pack-ink);
}

.ndt-job-packages-main {
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.12), transparent 34rem),
		linear-gradient(180deg, #ffffff 0%, #F7F9FC 44rem, #F7F9FC 100%);
	min-height: 100vh;
}

.ndt-job-packages-wrap {
	width: min(1180px, calc(100% - 40px));
	margin: 0 auto;
}

.ndt-job-packages-hero {
	padding: 72px 0 34px;
}

.ndt-job-packages-hero-inner {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
	gap: 34px;
	align-items: center;
}

.ndt-job-packages-eyebrow,
.ndt-packages-eyebrow {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	margin: 0 0 14px;
	padding: 7px 12px;
	border: 1px solid rgba(255, 0, 109, 0.22);
	border-radius: 999px;
	background: var(--ndt-pack-pink-soft);
	color: var(--ndt-pack-pink);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.ndt-job-packages-hero h1 {
	max-width: 780px;
	margin: 0;
	color: var(--ndt-pack-navy);
	font-size: clamp(42px, 5vw, 68px);
	line-height: 0.96;
	letter-spacing: -0.055em;
	font-weight: 900;
}

.ndt-job-packages-hero-copy > p {
	max-width: 700px;
	margin: 22px 0 0;
	color: var(--ndt-pack-muted);
	font-size: 18px;
	line-height: 1.7;
}

.ndt-job-packages-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 28px;
}

.ndt-job-packages-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 13px 20px;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 850;
	line-height: 1;
	text-decoration: none;
	transition: transform 0.16s ease, background 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.ndt-job-packages-btn:hover {
	transform: translateY(-1px);
}

.ndt-job-packages-btn-primary {
	background: var(--ndt-pack-pink);
	color: #fff;
	box-shadow: 0 16px 32px rgba(255, 0, 109, 0.22);
}

.ndt-job-packages-btn-primary:hover {
	background: #d9005c;
	color: #fff;
}

.ndt-job-packages-btn-secondary {
	border: 1px solid var(--ndt-pack-border);
	background: #fff;
	color: var(--ndt-pack-navy);
	box-shadow: 0 10px 24px rgba(11, 31, 61, 0.08);
}

.ndt-job-packages-btn-secondary:hover {
	border-color: rgba(255, 0, 109, 0.28);
	color: var(--ndt-pack-pink);
}

.ndt-job-packages-hero-card {
	padding: 28px;
	border: 1px solid var(--ndt-pack-border);
	border-radius: 28px;
	background: rgba(255, 255, 255, 0.90);
	box-shadow: var(--ndt-pack-shadow);
	backdrop-filter: blur(10px);
}

.ndt-job-packages-hero-card > span {
	display: block;
	margin-bottom: 10px;
	color: var(--ndt-pack-pink);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.ndt-job-packages-hero-card h2 {
	margin: 0;
	color: var(--ndt-pack-navy);
	font-size: 28px;
	line-height: 1.08;
	letter-spacing: -0.04em;
	font-weight: 900;
}

.ndt-job-packages-hero-card ul {
	display: grid;
	gap: 12px;
	margin: 22px 0 0;
	padding: 0;
	list-style: none;
}

.ndt-job-packages-hero-card li {
	position: relative;
	padding-left: 24px;
	color: var(--ndt-pack-ink);
	font-size: 15px;
	line-height: 1.45;
	font-weight: 650;
}

.ndt-job-packages-hero-card li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55em;
	width: 9px;
	height: 9px;
	border-radius: 999px;
	background: var(--ndt-pack-pink);
	box-shadow: 0 0 0 5px var(--ndt-pack-pink-soft);
}

/* =========================================================
   NDT Jobs - Job Packages Content
   ========================================================= */

.ndt-job-packages-value-strip {
	padding: 0 0 34px;
}

.ndt-job-packages-value-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.ndt-job-packages-value-grid > div {
	padding: 18px;
	border: 1px solid var(--ndt-pack-border);
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(11, 31, 61, 0.06);
}

.ndt-job-packages-value-grid strong {
	display: block;
	margin-bottom: 5px;
	color: var(--ndt-pack-navy);
	font-size: 15px;
	font-weight: 900;
}

.ndt-job-packages-value-grid span {
	display: block;
	color: var(--ndt-pack-muted);
	font-size: 14px;
	line-height: 1.45;
}

.ndt-job-packages-content {
	padding: 0 0 80px;
}

/* Shortcode wrapper */
.ndt-job-packages-page .ndt-packages-wrap {
	width: 100%;
	margin: 0;
}

/* The PHP page template owns the hero now, so hide the shortcode's duplicate header */
.ndt-job-packages-page .ndt-packages-header {
	display: none;
}

/* Current plan */
.ndt-current-plan-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 24px;
	align-items: center;
	margin-bottom: 28px;
	padding: 26px 28px;
	border: 1px solid rgba(255, 0, 109, 0.18);
	border-radius: 28px;
	background:
		linear-gradient(135deg, #ffffff 0%, #ffffff 58%, rgba(255, 0, 109, 0.055) 100%);
	box-shadow: 0 20px 54px rgba(11, 31, 61, 0.10);
}

.ndt-current-plan-card h2 {
	margin: 0;
	color: var(--ndt-pack-navy);
	font-size: 34px;
	line-height: 1.05;
	letter-spacing: -0.045em;
	font-weight: 900;
}

.ndt-current-plan-card p:not(.ndt-packages-eyebrow) {
	max-width: 720px;
	margin: 10px 0 0;
	color: var(--ndt-pack-muted);
	font-size: 15px;
	line-height: 1.55;
}

/* Package grids */
.ndt-package-grid {
	display: grid;
	gap: 18px;
	margin-top: 0;
}

.ndt-package-grid--monthly {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-bottom: 30px;
}

.ndt-package-grid--extras {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ndt-package-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: 24px;
	border: 1px solid var(--ndt-pack-border);
	border-radius: 26px;
	background: #fff;
	box-shadow: 0 18px 46px rgba(11, 31, 61, 0.08);
	transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.ndt-package-card:hover {
	transform: translateY(-2px);
	border-color: rgba(255, 0, 109, 0.22);
	box-shadow: 0 24px 60px rgba(11, 31, 61, 0.12);
}

.ndt-package-card h2 {
	margin: 0;
	color: var(--ndt-pack-navy);
	font-size: 26px;
	line-height: 1.08;
	letter-spacing: -0.035em;
	font-weight: 900;
}

.ndt-package-price {
	margin-top: 12px;
	color: var(--ndt-pack-navy);
	font-size: 34px;
	line-height: 1;
	letter-spacing: -0.045em;
	font-weight: 950;
}

.ndt-package-card > p {
	margin: 14px 0 0;
	color: var(--ndt-pack-muted);
	font-size: 15px;
	line-height: 1.5;
}

.ndt-package-card ul {
	display: grid;
	gap: 10px;
	margin: 20px 0 24px;
	padding: 0;
	list-style: none;
}

.ndt-package-card li {
	position: relative;
	padding-left: 24px;
	color: var(--ndt-pack-ink);
	font-size: 14px;
	line-height: 1.45;
	font-weight: 650;
}

.ndt-package-card li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 0;
	color: var(--ndt-pack-pink);
	font-weight: 950;
}

.ndt-package-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	margin-top: auto;
	padding: 13px 16px;
	border: 1px solid transparent;
	border-radius: 16px;
	background: var(--ndt-pack-pink);
	color: #fff;
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	box-shadow: 0 14px 30px rgba(255, 0, 109, 0.18);
	transition: transform 0.16s ease, background 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.ndt-package-button:hover {
	transform: translateY(-1px);
	background: #d9005c;
	color: #fff;
}

.ndt-package-button--dark {
	background: var(--ndt-pack-navy);
	box-shadow: 0 14px 30px rgba(11, 31, 61, 0.16);
}

.ndt-package-button--dark:hover {
	background: var(--ndt-pack-pink);
	color: #fff;
}

/* =========================================================
   NDT Jobs - Job Packages Responsive
   ========================================================= */

@media (max-width: 1020px) {
	.ndt-job-packages-hero-inner {
		grid-template-columns: 1fr;
	}

	.ndt-package-grid--monthly,
	.ndt-package-grid--extras {
		grid-template-columns: 1fr;
	}

	.ndt-current-plan-card {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 760px) {
	.ndt-job-packages-wrap {
		width: min(100% - 28px, 1180px);
	}

	.ndt-job-packages-hero {
		padding: 48px 0 28px;
	}

	.ndt-job-packages-hero h1 {
		font-size: clamp(36px, 12vw, 48px);
		letter-spacing: -0.045em;
	}

	.ndt-job-packages-hero-copy > p {
		font-size: 16px;
	}

	.ndt-job-packages-value-grid {
		grid-template-columns: 1fr;
	}

	.ndt-job-packages-hero-card,
	.ndt-current-plan-card,
	.ndt-package-card {
		border-radius: 22px;
	}

	.ndt-current-plan-card,
	.ndt-package-card,
	.ndt-job-packages-hero-card {
		padding: 22px;
	}

	.ndt-current-plan-card h2 {
		font-size: 30px;
	}

	.ndt-package-price {
		font-size: 30px;
	}
}

/* =========================================================
   NDT Jobs - Job Packages Current Plan Polish
   ========================================================= */

.ndt-current-plan-card {
	grid-template-columns: minmax(0, 1fr) auto;
	max-width: 100%;
	padding: 24px 28px;
}

.ndt-current-plan-card .ndt-package-button {
	width: auto;
	min-width: 190px;
	padding-left: 24px;
	padding-right: 24px;
	white-space: nowrap;
}

.ndt-current-plan-card h2 {
	font-size: 28px;
}

.ndt-current-plan-card p:not(.ndt-packages-eyebrow) {
	max-width: 560px;
	font-size: 15px;
	line-height: 1.55;
}

/* Add breathing room between monthly plans and extra options */
.ndt-job-packages-page .ndt-package-grid--monthly {
	margin-bottom: 64px;
}

.ndt-job-packages-page .ndt-package-grid--extras {
	margin-top: 0;
	clear: both;
}

/* Make sure package cards do not visually collide */
.ndt-job-packages-page .ndt-package-card {
	position: relative;
	z-index: 1;
}

.ndt-job-packages-page .ndt-package-grid--monthly .ndt-package-card {
	z-index: 2;
}

/* =========================================================
   NDT Jobs - Job Packages Section Headers
   ========================================================= */

.ndt-job-packages-page .ndt-package-section-header {
	margin: 0 0 22px;
}

.ndt-job-packages-page .ndt-package-section-header h2 {
	max-width: 760px;
	margin: 0;
	color: #0B1F3D;
	font-size: clamp(30px, 3vw, 44px);
	line-height: 1.05;
	letter-spacing: -0.045em;
	font-weight: 900;
}

.ndt-job-packages-page .ndt-package-section-header > p:not(.ndt-packages-eyebrow) {
	max-width: 720px;
	margin: 12px 0 0;
	color: #667085;
	font-size: 16px;
	line-height: 1.6;
}

.ndt-job-packages-page .ndt-package-section-header--extras {
	margin-top: 8px;
}

/* =========================================================
   NDT Jobs - Job Package Button Containment
   ========================================================= */

.ndt-job-packages-page .ndt-package-card,
.ndt-job-packages-page .ndt-package-card * {
	box-sizing: border-box;
}

.ndt-job-packages-page .ndt-package-button {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin-left: 0;
	margin-right: 0;
	align-self: stretch;
	box-sizing: border-box;
	white-space: normal;
}

.ndt-job-packages-page .ndt-current-plan-card .ndt-package-button {
	width: auto;
	max-width: 100%;
	align-self: center;
}

/* Hiring overview package CTA */
.ndt-employer-v3__section-head--with-action {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
}

.ndt-employer-v3__section-head--with-action .ndt-employer-v3__status-pill {
	margin-top: 10px;
}

.ndt-employer-v3__plan-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 12px 18px;
	border-radius: 999px;
	background: #FF006D;
	color: #fff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	box-shadow: 0 14px 30px rgba(255, 0, 109, 0.18);
}

.ndt-employer-v3__plan-cta:hover {
	background: #0B1F3D;
	color: #fff;
}

@media (max-width: 760px) {
	.ndt-employer-v3__section-head--with-action {
		display: grid;
	}

	.ndt-employer-v3__plan-cta {
		width: 100%;
	}
}

/* Employer Getting Started - Product Workflow Image */
.ndt-employer-product-image {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.10), transparent 45%),
		#ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.12);
	overflow: hidden;
}

.ndt-employer-product-image img {
	display: block;
	width: 100%;
	max-width: 620px;
	height: auto;
	object-fit: contain;
}

@media (max-width: 760px) {
	.ndt-employer-product-image {
		padding: 16px;
		border-radius: 22px;
	}

	.ndt-employer-product-image img {
		max-width: 100%;
	}
}

/* Candidate Getting Started - Product Workflow Image */
.ndt-candidate-product-image {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 24px;
	border: 1px solid rgba(11, 31, 61, 0.12);
	border-radius: 28px;
	background:
		radial-gradient(circle at top left, rgba(255, 0, 109, 0.10), transparent 45%),
		#ffffff;
	box-shadow: 0 24px 70px rgba(11, 31, 61, 0.12);
	overflow: hidden;
}

.ndt-candidate-product-image img {
	display: block;
	width: 100%;
	max-width: 620px;
	height: auto;
	object-fit: contain;
}

@media (max-width: 760px) {
	.ndt-candidate-product-image {
		padding: 16px;
		border-radius: 22px;
	}

	.ndt-candidate-product-image img {
		max-width: 100%;
	}
}

/* =========================================================
   NDT Jobs Mobile Hamburger Menu
========================================================= */

.ndt-home-mobile-toggle,
.ndt-home-mobile-menu {
	display: none;
}

.ndt-home-site-header {
	position: relative;
}

.ndt-home-mobile-toggle {
	width: 44px;
	height: 44px;
	border: 1px solid rgba(11, 31, 61, 0.14);
	border-radius: 999px;
	background: #ffffff;
	cursor: pointer;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 5px;
	padding: 0;
}

.ndt-home-mobile-toggle span {
	display: block;
	width: 18px;
	height: 2px;
	border-radius: 999px;
	background: #0B1F3D;
	transition: transform 180ms ease, opacity 180ms ease;
}

.ndt-home-mobile-toggle.is-open span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.ndt-home-mobile-toggle.is-open span:nth-child(2) {
	opacity: 0;
}

.ndt-home-mobile-toggle.is-open span:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

.ndt-home-mobile-menu {
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	z-index: 50;
	background: #ffffff;
	border-top: 1px solid rgba(11, 31, 61, 0.08);
	border-bottom: 1px solid rgba(11, 31, 61, 0.12);
	box-shadow: 0 22px 40px rgba(11, 31, 61, 0.12);
}

.ndt-home-mobile-menu.is-open {
	display: block;
}

.ndt-home-mobile-menu-inner {
	padding-top: 18px;
	padding-bottom: 18px;
}

.ndt-home-mobile-nav {
	display: grid;
	gap: 4px;
}

.ndt-home-mobile-nav a,
.ndt-home-mobile-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 13px 0;
	color: #0B1F3D;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	border-bottom: 1px solid rgba(11, 31, 61, 0.08);
}

.ndt-home-mobile-actions {
	display: grid;
	gap: 10px;
	margin-top: 16px;
}

.ndt-home-mobile-cta {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	padding: 13px 18px;
	border-radius: 999px;
	background: #FF006D;
	color: #ffffff;
	font-weight: 800;
	text-decoration: none;
}

@media (max-width: 980px) {

	.ndt-home-site-header {
		position: sticky;
		top: 0;
		z-index: 100;
		background: #ffffff;
	}

	.ndt-home-site-header-inner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 14px;
	}

	.ndt-home-main-nav,
	.ndt-home-header-actions-desktop {
		display: none;
	}

	.ndt-home-mobile-toggle {
		display: flex;
	}

	.ndt-home-logo-img {
		max-width: 155px;
		height: auto;
	}
}

@media (min-width: 981px) {

	.ndt-home-mobile-menu {
		display: none !important;
	}
}

@media (max-width: 980px) {

	.ndt-home-site-header-inner {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: space-between !important;
		flex-wrap: nowrap !important;
		gap: 16px !important;
		padding-top: 14px;
		padding-bottom: 14px;
	}

	.ndt-home-brand {
		display: flex !important;
		align-items: center !important;
		flex: 0 1 auto !important;
		min-width: 0 !important;
	}

	.ndt-home-logo-img {
		display: block !important;
		width: auto !important;
		max-width: 150px !important;
		height: auto !important;
	}

	.ndt-home-main-nav,
	.ndt-home-header-actions,
	.ndt-home-header-actions-desktop {
		display: none !important;
	}

	.ndt-home-mobile-toggle {
		display: flex !important;
		flex: 0 0 44px !important;
		margin-left: auto !important;
	}
}

/* =========================================================
   Post a Job - Mobile Layout
   ========================================================= */

@media (max-width: 900px) {
	.ndt-post-job-main {
		overflow-x: hidden;
	}

	.ndt-post-job-wrap {
		width: min(100% - 32px, 1180px);
		margin: 0 auto;
	}

	.ndt-post-job-hero {
		padding: 42px 0 28px;
	}

	.ndt-post-job-hero-inner {
		display: grid;
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.ndt-post-job-hero-copy h1 {
		font-size: clamp(42px, 13vw, 58px);
		line-height: 0.95;
		letter-spacing: -0.055em;
	}

	.ndt-post-job-hero-copy p {
		max-width: 100%;
		font-size: 17px;
		line-height: 1.55;
	}

	.ndt-post-job-hero-actions {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
		width: 100%;
	}

	.ndt-post-job-btn {
		width: 100%;
		justify-content: center;
	}

	.ndt-post-job-hero-panel {
		padding: 18px;
		border-radius: 22px;
	}

	.ndt-post-job-step {
		gap: 12px;
		padding: 14px 0;
	}

	.ndt-post-job-step span {
		width: 34px;
		height: 34px;
		min-width: 34px;
		font-size: 14px;
	}

	.ndt-post-job-step strong {
		font-size: 15px;
	}

	.ndt-post-job-step p {
		font-size: 13px;
		line-height: 1.45;
	}

	.ndt-post-job-content {
		padding: 30px 0 56px;
	}

	.ndt-post-job-layout {
		display: grid;
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.ndt-post-job-sidebar {
		order: 2;
	}

	.ndt-post-job-form-card {
		order: 1;
	}
}

/* =========================================================
   Post a Job - Phone Form Cleanup
   ========================================================= */

@media (max-width: 640px) {
	.ndt-post-job-wrap {
		width: min(100% - 24px, 1180px);
	}

	.ndt-post-job-hero {
		padding: 34px 0 22px;
	}

	.ndt-post-job-eyebrow {
		font-size: 11px;
	}

	.ndt-post-job-hero-copy h1 {
		font-size: 44px;
	}

	.ndt-post-job-hero-copy p {
		font-size: 16px;
	}

	.ndt-post-job-hero-panel {
		padding: 16px;
		border-radius: 20px;
	}

	.ndt-post-job-form-card {
		padding: 20px;
		border-radius: 22px;
	}

	.ndt-post-job-form-heading {
		margin-bottom: 20px;
	}

	.ndt-post-job-form-heading h2 {
		font-size: 28px;
		line-height: 1.05;
	}

	.ndt-post-job-form-heading p {
		font-size: 14px;
		line-height: 1.55;
	}

	.ndt-post-job-form-shell form.job-manager-form fieldset,
	.ndt-post-job-form-shell #submit-job-form fieldset {
		padding: 20px 0 !important;
	}

	.ndt-post-job-form-shell form.job-manager-form fieldset > label,
	.ndt-post-job-form-shell #submit-job-form fieldset > label {
		font-size: 15px !important;
		margin-bottom: 8px !important;
	}

	.ndt-post-job-form-shell form.job-manager-form input[type="text"],
	.ndt-post-job-form-shell form.job-manager-form input[type="email"],
	.ndt-post-job-form-shell form.job-manager-form input[type="url"],
	.ndt-post-job-form-shell form.job-manager-form input[type="number"],
	.ndt-post-job-form-shell form.job-manager-form input[type="password"],
	.ndt-post-job-form-shell form.job-manager-form select,
	.ndt-post-job-form-shell form.job-manager-form textarea:not(.wp-editor-area),
	.ndt-post-job-form-shell #submit-job-form input[type="text"],
	.ndt-post-job-form-shell #submit-job-form input[type="email"],
	.ndt-post-job-form-shell #submit-job-form input[type="url"],
	.ndt-post-job-form-shell #submit-job-form input[type="number"],
	.ndt-post-job-form-shell #submit-job-form input[type="password"],
	.ndt-post-job-form-shell #submit-job-form select,
	.ndt-post-job-form-shell #submit-job-form textarea:not(.wp-editor-area) {
		width: 100% !important;
		max-width: 100% !important;
		min-height: 46px !important;
		padding: 12px 14px !important;
		border-radius: 13px !important;
		font-size: 15px !important;
	}

	.ndt-post-job-form-shell form.job-manager-form textarea:not(.wp-editor-area),
	.ndt-post-job-form-shell #submit-job-form textarea:not(.wp-editor-area) {
		min-height: 140px !important;
	}

	.ndt-post-job-form-shell .wp-editor-wrap {
		border-radius: 14px !important;
	}

	.ndt-post-job-form-shell .wp-editor-wrap iframe {
		min-height: 220px !important;
	}

	.ndt-post-job-sidebar-card {
		padding: 20px;
		border-radius: 22px;
	}

	.ndt-post-job-sidebar-card h2 {
		font-size: 22px;
	}

	.ndt-post-job-sidebar-card li,
	.ndt-post-job-sidebar-card p {
		font-size: 14px;
	}
}

/* =========================================================
   Post a Job - Mobile Checkbox Fields
   ========================================================= */

@media (max-width: 640px) {
	.ndt-post-job-form-shell form.job-manager-form .job-manager-term-checklist,
	.ndt-post-job-form-shell form.job-manager-form .field ul,
	.ndt-post-job-form-shell #submit-job-form .job-manager-term-checklist,
	.ndt-post-job-form-shell #submit-job-form .field ul {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 10px !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.ndt-post-job-form-shell form.job-manager-form .job-manager-term-checklist li label,
	.ndt-post-job-form-shell form.job-manager-form .field ul li label,
	.ndt-post-job-form-shell #submit-job-form .job-manager-term-checklist li label,
	.ndt-post-job-form-shell #submit-job-form .field ul li label {
		display: flex !important;
		align-items: flex-start !important;
		gap: 9px !important;
		font-size: 14px !important;
		line-height: 1.35 !important;
	}

	.ndt-post-job-form-shell form.job-manager-form input[type="checkbox"],
	.ndt-post-job-form-shell form.job-manager-form input[type="radio"],
	.ndt-post-job-form-shell #submit-job-form input[type="checkbox"],
	.ndt-post-job-form-shell #submit-job-form input[type="radio"] {
		width: 17px !important;
		height: 17px !important;
		margin-top: 1px !important;
	}
}

@media (max-width: 900px) {
	.ndt-post-job-sidebar {
		display: none;
	}
}

.ndt-employer-v3__package-prefix {
	display: block;
	margin-bottom: 4px;
	color: #64748b;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.ndt-employer-v3__status-pill {
	background: #e5e7eb;
	color: #374151;
}

.ndt-employer-v3__status-pill--active,
.ndt-employer-v3__status-pill--trialing {
	background: #dcfce7;
	color: #166534;
	border: 1px solid #bbf7d0;
}

.ndt-employer-v3__status-pill--past_due,
.ndt-employer-v3__status-pill--unpaid,
.ndt-employer-v3__status-pill--incomplete,
.ndt-employer-v3__status-pill--incomplete_expired {
	background: #fef3c7;
	color: #92400e;
	border: 1px solid #fde68a;
}

.ndt-employer-v3__status-pill--canceled,
.ndt-employer-v3__status-pill--cancelled,
.ndt-employer-v3__status-pill--expired {
	background: #fee2e2;
	color: #991b1b;
	border: 1px solid #fecaca;
}

.ndt-candidate-dashboard-page .ndt-dash-tabs {
	display: flex !important;
	justify-content: center !important;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	text-align: center;
}

.ndt-legal-page {
		background: #f6f8fb;
	}

	.ndt-legal-main {
		min-height: 100vh;
		background:
			radial-gradient(circle at top right, rgba(255, 0, 109, 0.08), transparent 34%),
			linear-gradient(180deg, #ffffff 0%, #f6f8fb 44%, #f6f8fb 100%);
		color: #0B1F3D;
	}

	.ndt-legal-wrap {
		width: min(980px, calc(100% - 40px));
		margin: 0 auto;
	}

	.ndt-legal-hero {
		padding: 70px 0 34px;
	}

	.ndt-legal-eyebrow {
		display: inline-flex;
		width: fit-content;
		border-radius: 999px;
		background: rgba(255, 0, 109, 0.10);
		color: #FF006D;
		font-size: 12px;
		font-weight: 950;
		text-transform: uppercase;
		letter-spacing: 0.09em;
		padding: 8px 12px;
		margin-bottom: 18px;
	}

	.ndt-legal-hero h1 {
		margin: 0;
		color: #0B1F3D;
		font-size: clamp(44px, 7vw, 82px);
		line-height: 0.95;
		letter-spacing: -0.07em;
	}

	.ndt-legal-hero p {
		margin: 18px 0 0;
		max-width: 720px;
		color: #526173;
		font-size: 18px;
		line-height: 1.65;
	}

	.ndt-legal-content-section {
		padding: 18px 0 80px;
	}

	.ndt-legal-card {
		background: #ffffff;
		border: 1px solid rgba(11, 31, 61, 0.08);
		border-radius: 28px;
		padding: 36px;
		box-shadow: 0 20px 60px rgba(11, 31, 61, 0.08);
	}

	.ndt-legal-card h2,
	.ndt-legal-card h3 {
		color: #0B1F3D;
		letter-spacing: -0.03em;
	}

	.ndt-legal-card p,
	.ndt-legal-card li {
		color: #334155;
		font-size: 16px;
		line-height: 1.7;
	}

	.ndt-legal-placeholder {
		border: 1px dashed rgba(255, 0, 109, 0.35);
		border-radius: 22px;
		background:
			linear-gradient(135deg, rgba(255, 0, 109, 0.06), rgba(11, 31, 61, 0.03)),
			#ffffff;
		padding: 30px;
	}

	.ndt-legal-placeholder span {
		display: inline-flex;
		width: fit-content;
		border-radius: 999px;
		background: #FF006D;
		color: #ffffff;
		font-size: 11px;
		font-weight: 950;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		padding: 7px 10px;
		margin-bottom: 14px;
	}

	.ndt-legal-placeholder h2 {
		margin: 0 0 10px;
		font-size: 28px;
		line-height: 1.1;
	}

	.ndt-legal-placeholder p {
		margin: 0;
		color: #526173;
	}

	@media (max-width: 700px) {
		.ndt-legal-wrap {
			width: min(100% - 28px, 980px);
		}

		.ndt-legal-hero {
			padding: 46px 0 24px;
		}

		.ndt-legal-card {
			padding: 22px;
			border-radius: 24px;
		}

		.ndt-legal-placeholder {
			padding: 22px;
		}
	}
	
	.ndt-academic-featured-card__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 120px;
	padding: 22px;
	background: #ffffff;
	border-radius: 18px;
	overflow: hidden;
}

.ndt-academic-featured-card__logo img {
	display: block;
	width: 100%;
	max-width: 220px;
	max-height: 86px;
	object-fit: contain;
}




/* =========================================================
   NDT Jobs Resources Page
   ========================================================= */


	.ndt-resources-page {
		background: #f6f8fb;
	}

	.ndt-resources-main {
		background:
			radial-gradient(circle at top right, rgba(255, 0, 109, 0.10), transparent 34rem),
			linear-gradient(180deg, #ffffff 0%, #f6f8fb 42%, #f6f8fb 100%);
		color: #0B1F3D;
		min-height: 100vh;
	}

	.ndt-resources-wrap {
		width: min(1180px, calc(100% - 40px));
		margin: 0 auto;
	}

	.ndt-resources-hero {
		padding: 72px 0 44px;
	}

	.ndt-resources-hero-card {
		position: relative;
		display: grid;
		grid-template-columns: minmax(0, 1fr) 340px;
		gap: 28px;
		align-items: end;
		overflow: hidden;
		border-radius: 34px;
		background:
			radial-gradient(circle at top right, rgba(255, 0, 109, 0.18), transparent 32%),
			linear-gradient(135deg, #0B1F3D 0%, #102c54 62%, #182757 100%);
		color: #ffffff;
		padding: 56px;
		box-shadow: 0 28px 80px rgba(11, 31, 61, 0.22);
	}

	.ndt-resources-hero-card::before {
		content: "";
		position: absolute;
		inset: 0;
		background:
			linear-gradient(135deg, rgba(255, 255, 255, 0.09), transparent 36%),
			radial-gradient(circle at bottom left, rgba(255, 0, 109, 0.12), transparent 34%);
		pointer-events: none;
	}

	.ndt-resources-hero-card > * {
		position: relative;
		z-index: 1;
	}

	.ndt-resources-eyebrow,
	.ndt-resources-section-head span,
	.ndt-resources-category-head span,
	.ndt-resources-final-card span {
		display: inline-flex;
		width: fit-content;
		border-radius: 999px;
		font-size: 12px;
		font-weight: 950;
		text-transform: uppercase;
		letter-spacing: 0.09em;
	}

	.ndt-resources-eyebrow {
		background: rgba(255, 255, 255, 0.12);
		border: 1px solid rgba(255, 255, 255, 0.18);
		color: #ffffff;
		padding: 8px 12px;
		margin-bottom: 20px;
	}

	.ndt-resources-hero h1 {
		margin: 0;
		max-width: 860px;
		color: #ffffff;
		font-size: clamp(44px, 7vw, 84px);
		line-height: 0.94;
		letter-spacing: -0.07em;
	}

	.ndt-resources-hero p {
		margin: 22px 0 0;
		max-width: 720px;
		color: rgba(255, 255, 255, 0.82);
		font-size: 19px;
		line-height: 1.65;
	}

	.ndt-resources-actions {
		display: flex;
		flex-wrap: wrap;
		gap: 12px;
		margin-top: 34px;
	}

	.ndt-resources-button {
		box-sizing: border-box;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 50px;
		border-radius: 999px;
		background: #FF006D;
		color: #ffffff !important;
		text-decoration: none;
		font-weight: 950;
		padding: 13px 22px;
		text-align: center;
		box-shadow: 0 16px 36px rgba(255, 0, 109, 0.28);
	}

	.ndt-resources-button:hover {
		background: #ffffff;
		color: #0B1F3D !important;
	}

	.ndt-resources-button-secondary {
		background: rgba(255, 255, 255, 0.12);
		border: 1px solid rgba(255, 255, 255, 0.30);
		box-shadow: none;
	}

	.ndt-resources-button-secondary-dark {
		background: #0B1F3D;
		box-shadow: none;
	}

	.ndt-resources-hero-panel {
		border: 1px solid rgba(255, 255, 255, 0.16);
		border-radius: 26px;
		background: rgba(255, 255, 255, 0.09);
		padding: 24px;
		backdrop-filter: blur(10px);
	}

	.ndt-resources-hero-panel span {
		display: block;
		color: #ffffff;
		font-size: 18px;
		font-weight: 950;
		line-height: 1.15;
		margin-bottom: 10px;
	}

	.ndt-resources-hero-panel p {
		margin: 0;
		color: rgba(255, 255, 255, 0.76);
		font-size: 15px;
		line-height: 1.6;
	}

	.ndt-resources-section {
		padding: 42px 0;
	}

	.ndt-resources-section-head {
		margin-bottom: 22px;
	}

	.ndt-resources-section-head span,
	.ndt-resources-category-head span,
	.ndt-resources-final-card span {
		background: rgba(255, 0, 109, 0.08);
		color: #FF006D;
		padding: 7px 11px;
		margin-bottom: 12px;
	}

	.ndt-resources-section-head h2 {
		margin: 0;
		max-width: 780px;
		color: #0B1F3D;
		font-size: clamp(32px, 4vw, 54px);
		line-height: 1;
		letter-spacing: -0.055em;
	}

	.ndt-resources-post-grid {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 18px;
	}

	.ndt-resources-post-grid-featured {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.ndt-resources-post-card {
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
		min-height: 100%;
		border: 1px solid rgba(11, 31, 61, 0.10);
		border-radius: 26px;
		background: #ffffff;
		padding: 24px;
		box-shadow: 0 18px 52px rgba(11, 31, 61, 0.08);
	}

	.ndt-resources-post-category {
		display: inline-flex;
		width: fit-content;
		margin-bottom: 16px;
		border-radius: 999px;
		background: rgba(11, 31, 61, 0.06);
		color: rgba(11, 31, 61, 0.70);
		padding: 7px 10px;
		font-size: 11px;
		font-weight: 950;
		text-transform: uppercase;
		letter-spacing: 0.07em;
	}

	.ndt-resources-post-card h3,
	.ndt-resources-post-card h4 {
		margin: 0;
		color: #0B1F3D;
		line-height: 1.08;
		letter-spacing: -0.04em;
	}

	.ndt-resources-post-card h3 {
		font-size: clamp(24px, 3vw, 34px);
	}

	.ndt-resources-post-card h4 {
		font-size: 22px;
	}

	.ndt-resources-post-card h3 a,
	.ndt-resources-post-card h4 a {
		color: inherit;
		text-decoration: none;
	}

	.ndt-resources-post-card h3 a:hover,
	.ndt-resources-post-card h4 a:hover {
		color: #FF006D;
	}

	.ndt-resources-post-card p {
		margin: 16px 0 0;
		color: rgba(11, 31, 61, 0.68);
		font-size: 15px;
		line-height: 1.6;
	}

	.ndt-resources-post-meta {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 14px;
		margin-top: auto;
		padding-top: 22px;
		color: rgba(11, 31, 61, 0.54);
		font-size: 13px;
		font-weight: 800;
	}

	.ndt-resources-post-meta a {
		color: #FF006D;
		text-decoration: none;
		font-weight: 950;
		white-space: nowrap;
	}

	.ndt-resources-category-stack {
		display: grid;
		gap: 28px;
	}

	.ndt-resources-category-block {
		border: 1px solid rgba(11, 31, 61, 0.10);
		border-radius: 30px;
		background: rgba(255, 255, 255, 0.72);
		padding: 24px;
		box-shadow: 0 18px 52px rgba(11, 31, 61, 0.06);
	}

	.ndt-resources-category-head {
		display: flex;
		align-items: end;
		justify-content: space-between;
		gap: 18px;
		margin-bottom: 18px;
	}

	.ndt-resources-category-head h3 {
		margin: 0;
		color: #0B1F3D;
		font-size: clamp(26px, 3vw, 38px);
		line-height: 1;
		letter-spacing: -0.05em;
	}

	.ndt-resources-category-head > a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 42px;
		border-radius: 999px;
		background: #0B1F3D;
		color: #ffffff;
		padding: 10px 16px;
		font-size: 13px;
		font-weight: 950;
		text-decoration: none;
		white-space: nowrap;
	}

	.ndt-resources-final-cta {
		padding: 42px 0 86px;
	}

	.ndt-resources-final-card {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 28px;
		border-radius: 32px;
		background: #ffffff;
		border: 1px solid rgba(11, 31, 61, 0.10);
		padding: 34px;
		box-shadow: 0 24px 70px rgba(11, 31, 61, 0.10);
	}

	.ndt-resources-final-card h2 {
		margin: 0;
		color: #0B1F3D;
		font-size: clamp(30px, 4vw, 52px);
		line-height: 1;
		letter-spacing: -0.055em;
	}

	.ndt-resources-final-card p {
		margin: 14px 0 0;
		max-width: 680px;
		color: rgba(11, 31, 61, 0.68);
		font-size: 16px;
		line-height: 1.6;
	}

	.ndt-resources-final-actions {
		display: flex;
		flex-wrap: wrap;
		gap: 12px;
		justify-content: flex-end;
	}

	@media (max-width: 1000px) {
		.ndt-resources-hero-card {
			grid-template-columns: 1fr;
		}

		.ndt-resources-post-grid,
		.ndt-resources-post-grid-featured {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.ndt-resources-final-card {
			align-items: flex-start;
			flex-direction: column;
		}

		.ndt-resources-final-actions {
			justify-content: flex-start;
		}
	}

	@media (max-width: 700px) {
		.ndt-resources-wrap {
			width: min(100% - 28px, 1180px);
		}

		.ndt-resources-hero {
			padding: 38px 0 30px;
		}

		.ndt-resources-hero-card {
			padding: 32px 24px;
			border-radius: 28px;
		}

		.ndt-resources-hero h1 {
			font-size: clamp(38px, 12vw, 52px);
		}

		.ndt-resources-hero p {
			font-size: 16px;
		}

		.ndt-resources-actions,
		.ndt-resources-final-actions {
			flex-direction: column;
			width: 100%;
		}

		.ndt-resources-button {
			width: 100%;
		}

		.ndt-resources-section {
			padding: 30px 0;
		}

		.ndt-resources-post-grid,
		.ndt-resources-post-grid-featured {
			grid-template-columns: 1fr;
		}

		.ndt-resources-category-block {
			padding: 18px;
			border-radius: 24px;
		}

		.ndt-resources-category-head {
			align-items: flex-start;
			flex-direction: column;
		}

		.ndt-resources-category-head > a {
			width: 100%;
		}

		.ndt-resources-final-card {
			padding: 24px;
			border-radius: 26px;
		}
	}
