/**
 * Bank vacancy — sits inside the BankingFeeds theme header/footer.
 * Does not lock html/body overflow. Hides retired Ask Banking AI chip.
 */

.bfvac-wrap {
	--bfvac-accent: var(--bfn-accent, #047857);
	--bfvac-accent-ink: var(--bfn-accent-ink, #fff);
	--bfvac-accent-soft: var(--bfn-accent-soft, rgba(4, 120, 87, 0.12));
	--bfvac-accent-line: var(--bfn-accent-line, rgba(4, 120, 87, 0.28));
	--bfvac-bg: var(--bfn-canvas, #f4f1ea);
	--bfvac-surface: var(--bfn-surface, #fff);
	--bfvac-surface-2: var(--bfn-surface-2, #f7faf8);
	--bfvac-sunk: var(--bfn-surface-sunk, #ece7dc);
	--bfvac-line: var(--bfn-line, #ddd6c8);
	--bfvac-heading: var(--bfn-heading, #12211c);
	--bfvac-text: var(--bfn-text, #2a3833);
	--bfvac-muted: var(--bfn-muted, #5e6f69);
	--bfvac-faint: var(--bfn-faint, #88948f);
	--bfvac-r: var(--bfn-r-lg, 22px);
	--bfvac-r-sm: var(--bfn-r-sm, 12px);
	--bfvac-shadow: var(--bfn-shadow-sm, 0 8px 28px -16px rgba(18, 33, 28, 0.28));
	--bfvac-font: var(--bfn-font, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Arial, sans-serif);
	--bfvac-open-bg: #047857;
	--bfvac-open-ink: #fff;
	--bfvac-open-card: #eef8f2;
	--bfvac-open-line: #9ed4b5;
	--bfvac-up-bg: #b45309;
	--bfvac-up-ink: #fff;
	--bfvac-up-card: #fff8eb;
	--bfvac-up-line: #ead29a;
	--bfvac-closed-bg: #e8e4dc;
	--bfvac-closed-ink: #3d3a35;
	--bfvac-closed-card: #f4f2ee;
	--bfvac-closed-line: #d9d3c8;
}

html[data-bfn-scheme="dark"] .bfvac-wrap,
html[data-hog="dark"] .bfvac-wrap,
html.hog-theme--dark .bfvac-wrap,
html.dark-mode .bfvac-wrap,
body.hog-theme--dark .bfvac-wrap,
body.dark-mode .bfvac-wrap,
body[data-bfn-scheme="dark"] .bfvac-wrap,
.bfvac-wrap[data-scheme="dark"] {
	--bfvac-accent: var(--bfn-accent, #34d399);
	--bfvac-accent-ink: #06281d;
	--bfvac-accent-soft: rgba(52, 211, 153, 0.2);
	--bfvac-accent-line: rgba(52, 211, 153, 0.45);
	--bfvac-bg: #0e1714;
	--bfvac-surface: #15221e;
	--bfvac-surface-2: #1b2b26;
	--bfvac-sunk: #0b1311;
	--bfvac-line: #3a4f48;
	--bfvac-heading: #f6fbf8;
	--bfvac-text: #dce6e1;
	--bfvac-muted: #b4c4bd;
	--bfvac-faint: #8ea39b;
	--bfvac-open-bg: #34d399;
	--bfvac-open-ink: #06281d;
	--bfvac-open-card: #123028;
	--bfvac-open-line: #2a7a5c;
	--bfvac-up-bg: #e2b44a;
	--bfvac-up-ink: #1f1606;
	--bfvac-up-card: #2a2314;
	--bfvac-up-line: #6a5420;
	--bfvac-closed-bg: #3d4541;
	--bfvac-closed-ink: #eef2ef;
	--bfvac-closed-card: #171e1b;
	--bfvac-closed-line: #3a4f48;
}

body.bfvac-on #bfcai-floating-btn,
body.bfvac-on #bfcai-premium-container,
body.bfvac-on #bfcai-chat-modal,
body.bfvac-on .bfcai-float-btn,
body.bfvac-on .bfcai-modal {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

.bfvac-wrap {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	color: var(--bfvac-text);
	font-family: var(--bfvac-font);
}

.bfvac-wrap *,
.bfvac-wrap *::before,
.bfvac-wrap *::after { box-sizing: border-box; }

.bfvac-main {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	padding: 1rem 8px 2.5rem;
}

@media (min-width: 720px) {
	.bfvac-main { padding-left: 1.15rem; padding-right: 1.15rem; }
}

.bfvac-hero {
	display: grid;
	gap: 1rem;
	margin: 0 0 1.25rem;
}

@media (min-width: 720px) {
	.bfvac-hero { grid-template-columns: 1fr auto; align-items: start; }
}

.bfvac-eyebrow {
	margin: 0 0 0.3rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--bfvac-muted);
}

.bfvac-h1 {
	margin: 0 0 0.4rem;
	font-size: clamp(1.35rem, 2.6vw + 0.6rem, 2rem);
	font-weight: 750;
	letter-spacing: -0.03em;
	line-height: 1.2;
	color: var(--bfvac-heading);
}

.bfvac-h2 {
	margin: 0 0 0.35rem;
	font-size: 1.1rem;
	font-weight: 750;
	color: var(--bfvac-heading);
}

.bfvac-h3 {
	margin: 0 0 0.75rem;
	font-size: 1rem;
	color: var(--bfvac-heading);
}

.bfvac-lede,
.bfvac-updated {
	margin: 0 0 0.35rem;
	color: var(--bfvac-muted);
	max-width: 62ch;
}

.bfvac-updated { font-size: 0.85rem; }

.bfvac-hero__panel {
	background: var(--bfvac-surface);
	border: 1px solid var(--bfvac-line);
	border-radius: 18px;
	padding: 0.85rem 0.95rem;
	min-width: 180px;
}

.bfvac-hero__panel--logo {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 0.55rem;
	min-width: 220px;
	padding: 1rem 1.1rem 1.05rem;
}

.bfvac-hero__panel--logo .bfvac-stat {
	margin: 0;
}

.bfvac-hero__logo {
	width: 48px;
	height: 48px;
	object-fit: contain;
	margin: 0 0 0.5rem;
}

.bfvac-stat {
	margin: 0 0 0.45rem;
}

.bfvac-stat strong {
	display: block;
	font-size: 1.25rem;
	color: var(--bfvac-heading);
}

.bfvac-stat span {
	font-size: 0.78rem;
	color: var(--bfvac-muted);
}

.bfvac-stat--open {
	background: var(--bfvac-open-card);
	border: 1px solid var(--bfvac-open-line);
	border-radius: 10px;
	padding: 0.45rem 0.55rem;
}

.bfvac-stat--open strong { color: var(--bfvac-accent); }
.bfvac-stat--open span { color: var(--bfvac-heading); }

.bfvac-note,
.bfvac-disclaimer,
.bfvac-flash {
	margin: 0 0 1rem;
	padding: 0.75rem 0.85rem;
	border-radius: var(--bfvac-r-sm);
	background: var(--bfvac-sunk);
	color: var(--bfvac-muted);
	font-size: 0.9rem;
}

.bfvac-disclaimer { border-left: 3px solid var(--bfvac-accent); }
.bfvac-flash { background: var(--bfvac-accent-soft); color: var(--bfvac-heading); }
.bfvac-flash--err { background: #fef2f2; color: #991b1b; }

.bfvac-section { margin: 0 0 1.75rem; }
.bfvac-section__head { margin: 0 0 0.75rem; }
.bfvac-section__head p { margin: 0.2rem 0 0; font-size: 0.88rem; color: var(--bfvac-muted); }

.bfvac-entry {
	margin: 0 0 2rem;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

.bfvac-entry__head {
	margin: 0 0 1.2rem;
	padding: 0 0 1rem;
	border-bottom: 1px solid var(--bfvac-line);
}

.bfvac-entry__kicker {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 0.7rem;
	margin: 0 0 0.55rem;
	font-size: 0.82rem;
	font-weight: 700;
	color: var(--bfvac-muted);
}

.bfvac-entry .bfvac-h1 {
	margin: 0 0 0.55rem;
	font-size: clamp(1.55rem, 2.8vw + 0.7rem, 2.25rem);
	font-weight: 750;
	letter-spacing: -0.03em;
	line-height: 1.18;
}

.bfvac-entry__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem 1rem;
	margin: 0;
	font-size: 0.88rem;
	color: var(--bfvac-muted);
}

.bfvac-entry__media {
	margin: 0 0 1.25rem;
}

.bfvac-entry__media img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	border-radius: 12px;
}

.bfvac-entry__body {
	max-width: 68ch;
}

.bfvac-entry__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin: 1.15rem 0 0;
}

.bfvac-entry__tags span {
	display: inline-flex;
	padding: 0.2rem 0.6rem;
	border-radius: 999px;
	background: var(--bfvac-surface-2);
	border: 1px solid var(--bfvac-line);
	font-size: 0.75rem;
	font-weight: 650;
	color: var(--bfvac-muted);
}

.bfvac-latest {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.bfvac-latest__feature,
.bfvac-latest__tile {
	margin: 0;
	background: var(--bfvac-surface);
	border: 1px solid var(--bfvac-line);
	border-radius: 18px;
	overflow: hidden;
	min-width: 0;
}

.bfvac-latest__feature { border-radius: 20px; }

.bfvac-latest__hit {
	display: grid;
	grid-template-columns: 64px 1fr;
	gap: 0.75rem 0.9rem;
	align-items: start;
	padding: 0.9rem;
	text-decoration: none;
	color: inherit;
	min-width: 0;
	min-height: 100%;
}

.bfvac-latest__feature .bfvac-latest__hit {
	grid-template-columns: 80px 1fr;
	gap: 0.9rem 1.1rem;
	padding: 1.1rem 1.15rem;
}

.bfvac-latest__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: 14px;
	background: #fff;
	border: 1px solid var(--bfvac-line);
	overflow: hidden;
	flex-shrink: 0;
}

.bfvac-latest__feature .bfvac-latest__logo {
	width: 80px;
	height: 80px;
	border-radius: 16px;
}

.bfvac-latest__logo .bfvac-logo {
	width: 78%;
	height: 78%;
	border: 0;
	background: transparent;
	border-radius: 0;
}

.bfvac-latest__main {
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.35rem;
}

.bfvac-latest__title {
	margin: 0;
	font-size: 1.02rem;
	font-weight: 750;
	letter-spacing: -0.02em;
	line-height: 1.28;
	color: var(--bfvac-heading);
}

.bfvac-latest__feature .bfvac-latest__title {
	font-size: clamp(1.2rem, 1.4vw + 0.9rem, 1.55rem);
}

.bfvac-latest__by {
	display: flex;
	flex-wrap: wrap;
	gap: 0.2rem 0.7rem;
	font-size: 0.8rem;
	color: var(--bfvac-muted);
}

.bfvac-latest__by strong { color: var(--bfvac-heading); font-weight: 700; }

.bfvac-latest__excerpt {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 0.9rem;
	line-height: 1.45;
	color: var(--bfvac-muted);
}

.bfvac-latest__grid {
	display: grid;
	gap: 12px;
	grid-template-columns: 1fr;
}

.bfvac-latest__feature:hover,
.bfvac-latest__tile:hover {
	border-color: var(--bfvac-accent-line);
}

.bfvac-latest__hit:hover .bfvac-latest__title { color: var(--bfvac-accent); }

.bfvac-latest > .bfvac-section__head { margin-bottom: 0; }

.bfvac-hub--teaser .bfvac-latest__feature,
.bfvac-hub--teaser .bfvac-latest__tile {
	background: var(--bfvac-surface-2);
}

@media (min-width: 720px) {
	.bfvac-latest__grid { grid-template-columns: 1fr 1fr; }
	.bfvac-latest__feature .bfvac-latest__hit {
		grid-template-columns: 96px 1fr;
		padding: 1.25rem 1.3rem;
	}
	.bfvac-latest__feature .bfvac-latest__logo {
		width: 96px;
		height: 96px;
	}
}

.bfvac-section--open {
	background: var(--bfvac-open-card);
	border: 1px solid var(--bfvac-open-line);
	border-radius: 16px;
	padding: 0.95rem 0.85rem 1.05rem;
}

.bfvac-section--past {
	background: var(--bfvac-closed-card);
	border: 1px solid var(--bfvac-closed-line);
	border-radius: 16px;
	padding: 0.95rem 0.85rem 1.05rem;
}

.bfvac-section__head--faq {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.6rem 1rem;
}

.bfvac-edit {
	font-size: 0.85rem;
	font-weight: 700;
	color: var(--bfvac-accent);
	text-decoration: none;
}

.bfvac-feed {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.bfvac-row {
	margin: 0;
	background: var(--bfvac-surface);
	border: 1px solid var(--bfvac-line);
	border-radius: 16px;
	overflow: hidden;
	position: relative;
	content-visibility: auto;
	contain-intrinsic-size: auto 88px;
	transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.bfvac-row::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: var(--bfvac-line);
}

.bfvac-row__link {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	padding: 0.8rem 0.9rem;
	text-decoration: none;
	color: inherit;
	min-width: 0;
}

.bfvac-row--lead .bfvac-row__link { padding: 1.05rem 1.1rem; }

.bfvac-row__logo {
	width: 48px;
	height: 48px;
	flex-shrink: 0;
	border-radius: 12px;
	background: #fff;
	border: 1px solid var(--bfvac-line);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.bfvac-row--lead .bfvac-row__logo {
	width: 58px;
	height: 58px;
}

.bfvac-row__logo .bfvac-logo {
	width: 78%;
	height: 78%;
	border: 0;
	background: transparent;
	border-radius: 0;
}

.bfvac-row__main {
	min-width: 0;
	flex: 1;
}

.bfvac-row__title {
	margin: 0;
	font-size: 1.02rem;
	font-weight: 750;
	letter-spacing: -0.02em;
	line-height: 1.25;
	color: var(--bfvac-heading) !important;
}

.bfvac-row--lead .bfvac-row__title { font-size: 1.22rem; }

.bfvac-row__by {
	display: flex;
	flex-wrap: wrap;
	gap: 0.2rem 0.7rem;
	margin-top: 0.28rem;
	font-size: 0.8rem;
	color: var(--bfvac-muted);
}

.bfvac-row__bfi { font-weight: 700; color: var(--bfvac-heading); }

.bfvac-row__side {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.28rem;
	flex-shrink: 0;
}

.bfvac-row__when {
	font-size: 0.75rem;
	font-weight: 650;
	color: var(--bfvac-muted);
	white-space: nowrap;
}

.bfvac-pill {
	display: inline-flex;
	align-items: center;
	padding: 0.22rem 0.62rem;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	line-height: 1.2;
}

.bfvac-pill--open {
	background: var(--bfvac-open-bg) !important;
	color: var(--bfvac-open-ink) !important;
}
.bfvac-pill--upcoming {
	background: var(--bfvac-up-bg) !important;
	color: var(--bfvac-up-ink) !important;
}
.bfvac-pill--closed {
	background: var(--bfvac-closed-bg) !important;
	color: var(--bfvac-closed-ink) !important;
}

.bfvac-row[data-status="open"] {
	background: var(--bfvac-open-card);
	border-color: var(--bfvac-open-line);
}
.bfvac-row[data-status="open"]::before { background: var(--bfvac-open-bg); }

.bfvac-row[data-status="upcoming"] {
	background: var(--bfvac-up-card);
	border-color: var(--bfvac-up-line);
}
.bfvac-row[data-status="upcoming"]::before { background: var(--bfvac-up-bg); }

.bfvac-row[data-status="closed"] {
	background: var(--bfvac-closed-card);
	border-color: var(--bfvac-closed-line);
}
.bfvac-row[data-status="closed"]::before { background: var(--bfvac-closed-bg); }

.bfvac-row__go {
	width: 1.55rem;
	height: 1.55rem;
	flex-shrink: 0;
	border-radius: 999px;
	background: var(--bfvac-accent-soft);
	position: relative;
	transition: transform 0.22s ease;
}

.bfvac-row__go::before {
	content: "";
	position: absolute;
	left: 0.5rem;
	top: 0.52rem;
	width: 0.38rem;
	height: 0.38rem;
	border-right: 2px solid var(--bfvac-accent);
	border-top: 2px solid var(--bfvac-accent);
	transform: rotate(45deg);
}

.bfvac-row:hover {
	transform: translateY(-2px);
	border-color: var(--bfvac-accent-line);
	box-shadow: 0 14px 30px -18px rgba(18, 33, 28, 0.35);
}

.bfvac-row:hover .bfvac-row__title { color: var(--bfvac-accent); }
.bfvac-row:hover .bfvac-row__go { transform: translateX(3px); }

@media (max-width: 639px) {
	.bfvac-row__link {
		display: grid;
		grid-template-columns: 48px 1fr;
		grid-template-areas:
			"logo main"
			"logo side";
		column-gap: 0.75rem;
		row-gap: 0.35rem;
	}
	.bfvac-row__logo { grid-area: logo; }
	.bfvac-row__main { grid-area: main; }
	.bfvac-row__side {
		grid-area: side;
		flex-direction: row;
		align-items: center;
		justify-content: flex-start;
		gap: 0.5rem;
	}
	.bfvac-row__go { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.bfvac-row,
	.bfvac-row__go { transition: none; }
	.bfvac-row:hover { transform: none; }
}

.bfvac-cards,
.bfvac-jobs,
.bfvac-bfis {
	display: grid;
	gap: 12px;
	grid-template-columns: 1fr;
}

@media (min-width: 720px) {
	.bfvac-cards,
	.bfvac-bfis { grid-template-columns: 1fr 1fr; }
}

.bfvac-card,
.bfvac-job,
.bfvac-bfi {
	background: var(--bfvac-surface);
	border: 1px solid var(--bfvac-line);
	border-radius: var(--bfvac-r-sm);
	padding: 0.85rem 0.8rem;
	min-width: 0;
	text-decoration: none;
	color: inherit;
}

.bfvac-bfi {
	display: flex;
	gap: 0.7rem;
	align-items: center;
}

.bfvac-bfi:hover,
.bfvac-job:hover { border-color: var(--bfvac-accent-line); }

.bfvac-job[data-status="open"] {
	background: var(--bfvac-open-card);
	border-color: var(--bfvac-open-line);
}

.bfvac-job[data-status="upcoming"] {
	background: var(--bfvac-up-card);
	border-color: var(--bfvac-up-line);
}

.bfvac-job[data-status="closed"] {
	background: var(--bfvac-closed-card);
	border-color: var(--bfvac-closed-line);
}

.bfvac-job[data-status="open"] .bfvac-kicker { color: var(--bfvac-accent); }
.bfvac-job[data-status="upcoming"] .bfvac-kicker { color: var(--bfvac-up-bg); }
.bfvac-job[data-status="closed"] .bfvac-kicker { color: var(--bfvac-muted); }

.bfvac-logo,
.bfvac-bfi img,
.bfvac-hero__logo {
	width: 48px;
	height: 48px;
	object-fit: contain;
	border-radius: 10px;
	background: var(--bfvac-surface-2);
	flex-shrink: 0;
	border: 1px solid var(--bfvac-line);
}

.bfvac-bfi .bfvac-logo,
.bfvac-bfi img {
	width: 88px;
	height: 88px;
	padding: 8px;
}

.bfvac-hero__panel .bfvac-logo,
.bfvac-hero__logo,
.bfvac-hero__panel--logo .bfvac-logo {
	width: 180px;
	height: 180px;
	max-width: 100%;
	padding: 14px;
	margin: 0;
}

.bfvac-logo--fallback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	color: var(--bfvac-accent);
	font-size: 1.05rem;
}

.bfvac-job {
	display: grid;
	gap: 0.7rem;
}

.bfvac-job__hit {
	display: flex;
	gap: 0.85rem;
	align-items: flex-start;
	text-decoration: none;
	color: inherit;
	min-width: 0;
}

.bfvac-job__body {
	min-width: 0;
	flex: 1;
}

.bfvac-job__hit:hover .bfvac-job__title { color: var(--bfvac-accent); }

.bfvac-bfi strong {
	display: block;
	color: var(--bfvac-heading);
	font-style: normal;
}

.bfvac-bfi em {
	font-style: normal;
	font-size: 0.8rem;
	color: var(--bfvac-muted);
}

.bfvac-bfi__num {
	margin-left: auto;
	min-width: 1.7rem;
	height: 1.7rem;
	padding: 0 0.45rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: var(--bfvac-accent-soft);
	color: var(--bfvac-heading);
	font-size: 0.82rem;
	font-weight: 800;
	font-style: normal;
	font-variant-numeric: tabular-nums;
}

.bfvac-card h3,
.bfvac-job__title {
	margin: 0 0 0.4rem;
	font-size: 1rem;
	color: var(--bfvac-heading);
}

.bfvac-job__title a {
	color: inherit;
	text-decoration: none;
}

.bfvac-job__title a:hover { color: var(--bfvac-accent); }

.bfvac-dl { margin: 0; display: grid; gap: 0.35rem; }
.bfvac-dl dt {
	font-size: 0.65rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--bfvac-faint);
}
.bfvac-dl dd { margin: 0; font-weight: 650; color: var(--bfvac-heading); }

.bfvac-kicker {
	display: block;
	margin: 0 0 0.2rem;
	font-size: 0.68rem;
	font-weight: 750;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	color: var(--bfvac-muted);
}

.bfvac-job__meta {
	margin: 0 0 0.55rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem 0.8rem;
	font-size: 0.8rem;
	color: var(--bfvac-muted);
}

.bfvac-job__links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.7rem;
	align-items: center;
	margin: 0.5rem 0 0;
	font-size: 0.85rem;
}

.bfvac-job__links a { color: var(--bfvac-accent); font-weight: 650; }

.bfvac-btn {
	display: inline-flex;
	align-items: center;
	background: var(--bfvac-accent);
	color: var(--bfvac-accent-ink) !important;
	text-decoration: none;
	font-weight: 700;
	font-size: 0.85rem;
	padding: 0.42rem 0.85rem;
	border-radius: 999px;
	border: 0;
	cursor: pointer;
	font-family: inherit;
}

.bfvac-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin: 0 0 0.75rem;
}

.bfvac-tabs button {
	border: 1px solid var(--bfvac-line);
	background: var(--bfvac-surface-2);
	color: var(--bfvac-heading);
	font: inherit;
	font-size: 0.85rem;
	font-weight: 700;
	padding: 0.42rem 0.85rem;
	border-radius: 999px;
	cursor: pointer;
}

.bfvac-tabs button.is-on {
	background: var(--bfvac-accent);
	color: var(--bfvac-accent-ink);
	border-color: transparent;
}

.bfvac-search {
	width: 100%;
	border: 1px solid var(--bfvac-line);
	border-radius: 12px;
	padding: 0.6rem 0.75rem;
	font: inherit;
	background: var(--bfvac-surface-2);
	color: var(--bfvac-heading);
	margin: 0 0 0.9rem;
}

.bfvac-empty {
	margin: 0 0 0.75rem;
	padding: 0.85rem;
	text-align: center;
	color: var(--bfvac-muted);
	background: var(--bfvac-surface);
	border: 1px dashed var(--bfvac-line);
	border-radius: var(--bfvac-r-sm);
}

.bfvac-empty.is-hidden,
.bfvac-family.is-hidden,
.bfvac-bfi.is-hidden,
[hidden] { display: none !important; }

.bfvac-group { margin: 0 0 1.1rem; }
.bfvac-group__head { margin: 0 0 0.65rem; }
.bfvac-group__head h4 { margin: 0; color: var(--bfvac-heading); }
.bfvac-group__head p { margin: 0.15rem 0 0; font-size: 0.82rem; color: var(--bfvac-muted); }

.bfvac-stack { display: grid; gap: 12px; }

.bfvac-prose {
	font-size: 1rem;
	line-height: 1.65;
	color: var(--bfvac-text);
}
.bfvac-prose p,
.bfvac-prose ul,
.bfvac-prose ol,
.bfvac-prose blockquote,
.bfvac-prose table,
.bfvac-prose .wp-block-heading,
.bfvac-prose h1,
.bfvac-prose h2,
.bfvac-prose h3,
.bfvac-prose h4,
.bfvac-prose h5,
.bfvac-prose h6 {
	display: block;
	margin: 0 0 0.9rem;
}
.bfvac-prose h1,
.bfvac-prose h2,
.bfvac-prose h3,
.bfvac-prose h4,
.bfvac-prose .wp-block-heading {
	color: var(--bfvac-heading);
	font-weight: 750;
	letter-spacing: -0.02em;
	line-height: 1.3;
	margin-top: 1.15rem;
}
.bfvac-prose h2 { font-size: 1.2rem; }
.bfvac-prose h3 { font-size: 1.08rem; }
.bfvac-prose ul,
.bfvac-prose ol {
	padding-left: 1.25rem;
}
.bfvac-prose li {
	display: list-item;
	margin: 0 0 0.35rem;
}
.bfvac-prose img,
.bfvac-prose figure {
	max-width: 100%;
	height: auto;
}
.bfvac-prose a { color: var(--bfvac-accent); }
.bfvac-prose :last-child { margin-bottom: 0; }
.bfvac-prose--notice { margin-top: 1rem; }

.bfvac-pager {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin: 1rem 0 0;
	align-items: center;
}

.bfvac-pager a {
	border: 1px solid var(--bfvac-line);
	background: var(--bfvac-surface);
	color: var(--bfvac-heading);
	text-decoration: none;
	font-size: 0.85rem;
	font-weight: 700;
	padding: 0.35rem 0.7rem;
	border-radius: 999px;
}

.bfvac-pager a.is-on {
	background: var(--bfvac-accent);
	color: var(--bfvac-accent-ink) !important;
	border-color: transparent;
}

.bfvac-crumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	font-size: 0.82rem;
	margin: 0 0 1rem;
	color: var(--bfvac-muted);
}

.bfvac-crumbs a { color: var(--bfvac-accent); text-decoration: none; }

.bfvac-form {
	display: grid;
	gap: 0.85rem;
	background: var(--bfvac-surface);
	border: 1px solid var(--bfvac-line);
	border-radius: var(--bfvac-r);
	padding: 1rem 0.85rem;
}

.bfvac-form label { display: grid; gap: 0.3rem; font-size: 0.88rem; font-weight: 650; color: var(--bfvac-heading); }
.bfvac-form em { font-style: normal; font-weight: 400; font-size: 0.78rem; color: var(--bfvac-muted); }
.bfvac-form input,
.bfvac-form select,
.bfvac-form textarea {
	font: inherit;
	font-weight: 400;
	padding: 0.55rem 0.7rem;
	border: 1px solid var(--bfvac-line);
	border-radius: 10px;
	background: var(--bfvac-surface-2);
	color: var(--bfvac-heading);
	width: 100%;
}

.bfvac-form__row {
	display: grid;
	gap: 0.75rem;
}

@media (min-width: 720px) {
	.bfvac-form__row { grid-template-columns: 1fr 1fr; }
}

.bfvac-new-bfi {
	display: grid;
	gap: 0.75rem;
	padding: 0.75rem;
	background: var(--bfvac-sunk);
	border-radius: var(--bfvac-r-sm);
}

.bfvac-byline {
	margin: 0 0 1rem;
	font-size: 0.85rem;
	color: var(--bfvac-muted);
}

.bfvac-hub--teaser { margin: 1rem 0; }
.bfvac-hub--teaser .bfvac-hub__frame {
	background: var(--bfvac-surface);
	border: 1px solid var(--bfvac-line);
	border-radius: var(--bfvac-r);
	overflow: hidden;
}
.bfvac-hub--teaser .bfvac-hub__hero,
.bfvac-hub--teaser .bfvac-hub__body { padding: 0.85rem; }
.bfvac-hub--teaser .bfvac-hub__title { margin: 0 0 0.3rem; color: var(--bfvac-heading); }
.bfvac-hub--teaser .bfvac-hub__lede { color: var(--bfvac-muted); font-size: 0.9rem; }

.bfvac-wrap .bfvac-h1,
.bfvac-wrap .bfvac-h2,
.bfvac-wrap .bfvac-h3,
.bfvac-wrap .bfvac-row__bfi,
.bfvac-wrap .bfvac-bfi strong,
.bfvac-wrap .bfvac-card h3,
.bfvac-wrap .bfvac-job__title,
.bfvac-wrap .bfvac-latest__title,
.bfvac-wrap .bfvac-latest__by strong,
.bfvac-wrap .bfvac-group__head h4,
.bfvac-wrap .bfvac-dl dd {
	color: var(--bfvac-heading) !important;
}

.bfvac-wrap .bfvac-lede,
.bfvac-wrap .bfvac-updated,
.bfvac-wrap .bfvac-row__by,
.bfvac-wrap .bfvac-row__when,
.bfvac-wrap .bfvac-bfi em,
.bfvac-wrap .bfvac-section__head p,
.bfvac-wrap .bfvac-group__head p,
.bfvac-wrap .bfvac-job__meta,
.bfvac-wrap .bfvac-entry__meta,
.bfvac-wrap .bfvac-entry__kicker > span:not(.bfvac-pill),
.bfvac-wrap .bfvac-latest__by,
.bfvac-wrap .bfvac-latest__excerpt,
.bfvac-wrap .bfvac-byline,
.bfvac-wrap .bfvac-crumbs,
.bfvac-wrap .bfvac-empty,
.bfvac-wrap .bfvac-stat span {
	color: var(--bfvac-muted) !important;
}

.bfvac-wrap .bfvac-search,
.bfvac-wrap .bfvac-form input,
.bfvac-wrap .bfvac-form select,
.bfvac-wrap .bfvac-form textarea,
.bfvac-wrap .bfvac-tabs button:not(.is-on) {
	background: var(--bfvac-surface-2) !important;
	color: var(--bfvac-heading) !important;
	border-color: var(--bfvac-line) !important;
}

.bfvac-wrap .bfvac-search::placeholder {
	color: var(--bfvac-muted);
	opacity: 1;
}

.bfvac-wrap .bfvac-tabs button.is-on,
.bfvac-wrap .bfvac-btn,
.bfvac-wrap .bfvac-pager a.is-on {
	background: var(--bfvac-accent) !important;
	color: var(--bfvac-accent-ink) !important;
}

.bfvac-wrap .bfvac-row__logo,
.bfvac-wrap .bfvac-latest__logo,
.bfvac-wrap .bfvac-logo,
.bfvac-wrap .bfvac-bfi img,
.bfvac-wrap .bfvac-hero__logo {
	background: #fff !important;
}

.bfvac-bfi {
	content-visibility: auto;
	contain-intrinsic-size: auto 64px;
}

/* Individual vacancy SEO body headings — stand out from body copy. */
.bfvac-wrap .bfvac-entry .bfvac-seo-h,
.bfvac-wrap .bfvac-entry .bfvac-prose h2,
.bfvac-wrap .bfvac-entry .bfvac-prose h3,
.bfvac-wrap .bfvac-entry .bfvac-prose h4,
.bfvac-wrap .bfvac-entry .bfvac-prose h5,
.bfvac-wrap .bfvac-entry .bfvac-prose h6,
.bfvac-wrap .bfvac-entry .bfvac-prose .wp-block-heading,
.bfvac-wrap .bfvac-entry .entry-content h2,
.bfvac-wrap .bfvac-entry .entry-content h3,
.bfvac-wrap .bfvac-entry .entry-content h4,
.bfvac-wrap .bfvac-entry .bfvac-prose p:has(> strong:only-child),
.bfvac-wrap .bfvac-entry .bfvac-prose p:has(> b:only-child) {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 1.25rem 0 0.7rem;
	padding: 0.48rem 0.75rem 0.48rem 0.8rem;
	border: 0;
	border-left: 4px solid var(--bfvac-accent);
	border-radius: 0 12px 12px 0;
	background: var(--bfvac-accent-soft);
	color: var(--bfvac-accent) !important;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.28;
	box-shadow: none;
}

.bfvac-wrap .bfvac-entry .bfvac-seo-h strong,
.bfvac-wrap .bfvac-entry .bfvac-seo-h b,
.bfvac-wrap .bfvac-entry .bfvac-prose p:has(> strong:only-child) > strong,
.bfvac-wrap .bfvac-entry .bfvac-prose p:has(> b:only-child) > b {
	color: inherit !important;
	font-weight: 800;
}

.bfvac-wrap .bfvac-entry .bfvac-seo-h:first-child,
.bfvac-wrap .bfvac-entry .bfvac-prose h2:first-child,
.bfvac-wrap .bfvac-entry .bfvac-prose h3:first-child,
.bfvac-wrap .bfvac-entry .bfvac-prose .wp-block-heading:first-child,
.bfvac-wrap .bfvac-entry .entry-content h2:first-child {
	margin-top: 0;
}

.bfvac-wrap .bfvac-entry .bfvac-seo-h,
.bfvac-wrap .bfvac-entry .bfvac-prose h2,
.bfvac-wrap .bfvac-entry .entry-content h2,
.bfvac-wrap .bfvac-entry .bfvac-prose h2.wp-block-heading {
	font-size: 1.12rem;
}

.bfvac-wrap .bfvac-entry .bfvac-prose h3,
.bfvac-wrap .bfvac-entry .entry-content h3,
.bfvac-wrap .bfvac-entry .bfvac-prose h3.wp-block-heading {
	font-size: 1.02rem;
}

.bfvac-wrap .bfvac-entry .bfvac-prose h4,
.bfvac-wrap .bfvac-entry .bfvac-prose h5,
.bfvac-wrap .bfvac-entry .bfvac-prose h6 {
	font-size: 0.95rem;
	padding: 0.38rem 0.65rem 0.38rem 0.7rem;
}

.bfvac-wrap[data-scheme="dark"] .bfvac-entry .bfvac-seo-h,
.bfvac-wrap[data-scheme="dark"] .bfvac-entry .bfvac-prose h2,
.bfvac-wrap[data-scheme="dark"] .bfvac-entry .bfvac-prose h3,
.bfvac-wrap[data-scheme="dark"] .bfvac-entry .bfvac-prose h4,
.bfvac-wrap[data-scheme="dark"] .bfvac-entry .bfvac-prose h5,
.bfvac-wrap[data-scheme="dark"] .bfvac-entry .bfvac-prose h6,
.bfvac-wrap[data-scheme="dark"] .bfvac-entry .bfvac-prose .wp-block-heading,
.bfvac-wrap[data-scheme="dark"] .bfvac-entry .entry-content h2,
.bfvac-wrap[data-scheme="dark"] .bfvac-entry .entry-content h3,
.bfvac-wrap[data-scheme="dark"] .bfvac-entry .entry-content h4,
html[data-bfn-scheme="dark"] .bfvac-wrap .bfvac-entry .bfvac-prose h2,
html[data-bfn-scheme="dark"] .bfvac-wrap .bfvac-entry .bfvac-prose h3,
html[data-hog="dark"] .bfvac-wrap .bfvac-entry .bfvac-prose h2,
html.hog-theme--dark .bfvac-wrap .bfvac-entry .bfvac-prose h2,
body.hog-theme--dark .bfvac-wrap .bfvac-entry .bfvac-prose h2 {
	color: var(--bfvac-accent) !important;
	background: var(--bfvac-accent-soft);
	border-left-color: var(--bfvac-accent);
}

@media (max-width: 719px) {
	.bfvac-wrap .bfvac-entry .bfvac-seo-h,
	.bfvac-wrap .bfvac-entry .bfvac-prose h2,
	.bfvac-wrap .bfvac-entry .bfvac-prose h3,
	.bfvac-wrap .bfvac-entry .bfvac-prose h4,
	.bfvac-wrap .bfvac-entry .bfvac-prose h5,
	.bfvac-wrap .bfvac-entry .bfvac-prose h6,
	.bfvac-wrap .bfvac-entry .bfvac-prose .wp-block-heading,
	.bfvac-wrap .bfvac-entry .entry-content h2,
	.bfvac-wrap .bfvac-entry .entry-content h3,
	.bfvac-wrap .bfvac-entry .entry-content h4 {
		padding: 0.42rem 0.6rem 0.42rem 0.65rem;
		border-left-width: 3px;
		border-radius: 0 10px 10px 0;
	}
	.bfvac-wrap .bfvac-entry .bfvac-seo-h,
	.bfvac-wrap .bfvac-entry .bfvac-prose h2,
	.bfvac-wrap .bfvac-entry .entry-content h2 {
		font-size: 1.05rem;
	}
	.bfvac-wrap .bfvac-entry .bfvac-prose h3,
	.bfvac-wrap .bfvac-entry .entry-content h3 {
		font-size: 0.98rem;
	}
}
